MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_NextPart_01D82F4A.5CDEF2B0" This document is a Single File Web Page, also known as a Web Archive file. If you are seeing this message, your browser or editor doesn't support Web Archive files. Please download a browser that supports Web Archive. ------=_NextPart_01D82F4A.5CDEF2B0 Content-Location: file:///C:/9C65918E/01-31-2022-LFS170x-LinuxFoundation-Blockchain.htm Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset="windows-1252"
=
LFS170x - Linux
FoundationX
=
Blockchain: Understanding Its Use Cases and
Implications
Welcome to LFS170x: Blockchain - Understanding Its Use= Cases and Implications
Linux FoundationX - LFS170x
Once you complete this course, you will have a good understanding of what blockchain is and its impact and potential for change around the world. You will also be familiar with some of the immediate blockchain use cases in technology, business, and enterprise products and institutions.
LFS170x is part of the Blockcha= in for Business Professional Certificate. Skills in blockchain are being reported as the top job-skill in demand. This program is designed for the business professional who needs to understand the potential (or threat) of blockchain to their company and industry. Armed with better information of = the blockchain landscape, this program will help you rise to new challenges in = your current role by giving you a new dimension on which you can add value to yo= ur employer.
1.1
Introduction
1.2
Introduction to Blockchain =
and
The Early Internet
1.4
Career Opportunities in
Blockchain
1.5
Who is Using Blockchain=
?
1.6
Summary
2.1 Introduction
2.3 Cryptography
2.4 Transparency and Immutabili=
ty
2.5 Summary
3.1 Introduction
3.2 Smart Contracts<=
span
style=3D'font-size:12.5pt;font-family:"Inter",sans-serif'>
3.4 Public and Permissioned
Blockchains
3.5 The Blockchain Transaction<=
/span>
3.6 Consensus
3.7 Summary
4.1
Introduction
4.2
Open Source Code=
4.3
Governance
4.4
Identity and Anonymity on
Blockchain
4.5
Summary
5.1
Introduction
5.2
Problems Blockchain Solves<=
/span>
5.4
Future Trends
5.5
Summary
6.1
Introduction
6.7
Summary
By the end of
this chapter, you should be able to:
·&nb=
sp;
Discuss
blockchain technologies and the early Internet.
·&nb=
sp;
Explain the
difference between blockchain and the cryptocurrency Bitcoin.=
·&nb=
sp;
Discuss
blockchain characteristics.
·&nb=
sp;
Explain
blockchain components.
- Explain what
the block in blockchain is.
- Explain how
blocks are chained together.
- Discuss the
concept of immutability in a blockchain.=
·&nb=
sp;
Discuss about=
the
roles and users in a blockchain community.
·&nb=
sp;
Discuss use c=
ases
for general blockchain solutions.
Blockchain is=
a
peer-to-peer ledger system that allows peers to transact directly with each
other eliminating the need for a central authority.
At its core,
blockchain is a system for recording information about a
transaction in a new decentralized way that makes it difficult or impossibl=
e to
alter. These transactions are stored on sheets or blocks in a digital ledger
that is shared among the participants of the network. Consensus on the
transactions, brings the peer-to-=
peer
network into agreement. Once the agreed-upon transactions blocks are record=
ed
in the immutable ledger, trust becomes a fundamental component built into t=
he
system.
What started as a DARPA (Defense Advanced Research Project Age=
ncy)
experiment in decentralized computing communications between two university
labs in California in 1970, became the Transmission Control Protocol/Intern=
et
Protocol, INTERNET PROTOCOL SUITE (TCP/IP) developed as a standard in
networking protocol or computer communication standards, and it is the back=
bone
of today’s Internet.
With the TCP/IP protocols in place, users had the abil= ity to link hypertext documents in an information system accessible from any node = or computer using the TCP/IP protocol. The resulting information system or database is today’s World Wide Web.
With the birth of the World Wide Web, expanded usages = of this new technology arose along with expanded business opportunities. Web servers, people who host and store the documents and web browsers, companies set up to help you view linked documents, help create a household need for = this technology and the Internet explosion began.
The Internet =
can
be grouped into three distinct segments characterized by the way people
interact with this new technology.
·&nb=
sp;
Web 1.0 -
Internet of Connection
·&nb=
sp;
Web 2.0 -
Internet of Information
·&nb=
sp;
Web 3.0 -
Internet of Value
Let’s discuss
them in more detail.
Characteristics of Web 1.0:
· Development of a host of web-based applicati= ons, which fostered in online services, such as email.
· Content from administrator.
· Managed by a central authority.
· Read-only, information was “pushed” to users= .
· Email was the first widely adopted applicati= on on the Internet.
Ema=
il,
Electronically Transferring Information
Computers and items for connection became necessities. Technology advancements in computers brought on changes, floppy disks became hard drives that stored MB that turned into GB that turned into TB. Internet speeds switched from kilobits to tens of megabits per second, to gigabits p= er second and RAM grew from hundreds of kilobytes to gigabytes and the dot-com bubble began. Companies appeared attempting to cash in on this new technolo= gy, most notable was a company called Netscape which developed the first commercia= l Web browser.
Characteristi=
cs
of Web 2.0:
User-generated
content.
Read-write,
individuals can interact with information.
Information
became siloed.
Data became a
commodity.
Web 2.0 saw
emerging marketplaces that brought together unrelated buyers and sellers in=
a
seamless low-cost way. Data became a commodity collected, siloed and sold; =
we
were giving up our information at a frenzied pace. Websites let users gener=
ate content, soc=
ial
networks became part of our lives.
=
Social Networ=
king
Use Case: Music Sharing Companies<=
/strong>
Approach: Music stored on many computers connected
peer-to-peer. Napste=
r software
supplied its users with a centralized index of all music files and directed
users to where these files were located on the connected peers' computers.<=
/p>
Result: The industry cracks down music sharing compani= es copyright infringement. Napster is forced to ta= ke down its index, shutting down the platform.
Approach: Music stored on many computers connected peer-to-peer. BitTorrent's software was purely decentralized, the files were stored as packet on the peers' computers and when a request was made for a song, the software would find the packet and send it to the user.
Result: The industry cracks down music sharing compani= es copyright infringement. BitTorrent is asked to shut down their platform. Since they do not control the software once downloaded= to a peer, if two computers are running the software sharing can still occur.<= /p>
Music sharing companies gave us the first glimpse into peer-to-peer networking. Besides copyright infringement, the main challenge= for the music sharing companies was file integrity. You could never be sure the file you requested was the file you would get and there was no one to compl= ain to. Both Napster and BitTorrent are operating today, with different business models.
Characteristi=
cs
of Web 3.0:
·&nb=
sp;
Community
interaction.
·&nb=
sp;
More connecte=
d,
open, and intelligent.
·&nb=
sp;
Distributed
ledgers or blockchain technology, smart contracts, machine learning and
artificial intelligence.
·&nb=
sp;
Identity and
information will be held by the individual, breaking data silos.
Bitcoin is the
first widely accepted application for the Internet of Value (just as
email was the first big application for the Internet of Information).
Cryptocurrencies,
Electronically Transferring Value
The Internet of Val=
ue
represents a world where value is exchanged at the speed in which informati=
on
moves today. The Internet is still the basic platform that these new
technologies operate from. The new Web 3.0 browsers are being built to help=
you
manage your cryptocurrency,
keys, passwords and other blockchain features. Let’s now dive into blockcha=
in
basics.
There's a new technology that has the power to revolut= ionize how you, businesses, and the world interact!
You've probably heard of it: it's called Blockchain!= p>
But what is it? How does it work? How does it affect y= ou?
Hearing the word "blockchain" is comparable = to hearing the word "internet" in the early 90s.
It seemed elusive, like something that wasn't going to impact your daily life.
But here we are, more than 20 years later. Think about= how the Internet has transformed businesses, commerce, communication, even music and video.
And that's not even touching on how the Internet has affected you.
We all carry the Internet in our pocket.
We can transfer money at the touch of a button, check = the weather, get directions, and even have food delivered to our door.
The next technology to have that kind of impact isn't = some of the buzzwords you hear.
It's not big data. It's not artificial intelligence. I= t's not even social media.
It's BLOCKCHAIN!
Now, let's discuss the vast promise blockchain has for= every business, every society, and for everyone listening today.
And let's begin with an example we are all familiar wi= th.
When you attach a file, a Word document, an Excel shee= t, a PDF to an email, you aren't sending an original.
You are actually sending the recipient a copy, and tha= t's a great way to move information around.
But it's not so great when it comes to things like mon= ey, stocks and bonds, music, loyalty points, intellectual property, tickets to a game or concert.
Then, sending a copy is suddenly a very bad idea.
Let's look at an example.
If I send you tickets to a concert, it's important tha= t I don't send you a copy.
You now own the original asset and I can no longer use= or sell those tickets.
Similarly, if I send you $100, it's important that I s= till don't own the $100, or have the ability to send it to anyone else.
Both of these examples illustrate a double spend probl= em, and those can be eliminated with blockchain.
So now, in this exciting time in history, every kind of asset, from tickets, to money, to music, can be stored, moved, exchanged, a= nd transacted without an intermediary.
People everywhere can transact peer-to-peer and trust = each other by using collaboration and cryptography.
How did we get here, to this place of trust and collaboration?
It began when Satoshi Nakamoto, whose true identity is= still unknown, released a white paper in 2008, introducing a purely peer-to-peer version of electronic cash known as Bitcoin.
It is here that blockchain technology made its debut.<= /p>
Even today people believe Bitcoin and blockchain are o= ne and the same.
They are not!
Bitcoin, another alternative currency, utilize blockchain technology.
While an important one, Bitcoin is only one use case f= or blockchain.
Blockchain allows people to exchange assets and perform transactions without a third party.
Imagine a world where you don't need intermediaries.= p>
While traditionally we have needed central authorities= to trust one another and fulfill contracts, blockchain makes it possible to ha= ve our peers guarantee that for us. But how?
Assets, like we've discussed, are no longer stored in a central place, but distributed across a global ledger, using the highest le= vel of cryptography.
When a transaction is conducted, it's posted across te= ns of thousands of computers around the globe.
These transactions are recorded as blocks.
Let's imagine a sheet of paper that has 25 lines.
When a sheet is filled up with 25 transactions, the bl= ock is validated via group consensus.
Once the page has been validated, it is added to a sta= ck of previously validated sheets.
Each sheet on the stack can be assumed to be trustwort= hy because, once a sheet is validated, it can't be changed.
Because at this point, all the sheets are linked toget= her.
And to link our sheets together, we embed information = from the previous sheet of paper into the new, recently validated sheet.
In blockchain, our sheet of paper is equal to a block.=
The act of embedding a previous block of information i= nto the current block of information is called chaining, hence, the name blockchain.
In order to compromise or hack a blockchain network, s= omeone would have to gain control of the majority of computers in that network.
This is extremely difficult to do.
There is no longer a single point of failure, and this= is what makes blockchain infinitely more secure than what we have today.
Blockchain isn't just for assets, though. It extends to contracts.
These are called Smart Contracts.
And what are they exactly? What they sound like.
A smart contract self-executes and handles enforcement= , the management, and performance of agreements between people.
Examples of smart contracts include insurance policies, copyrighted content, escrow and lending, wills, and trusts.
Smart contracts will revolutionize how we do business.=
There are so many possibilities with blockchain; not j= ust in the now, but with things we haven't begun to think about yet.
Bitcoin is a digital currency running on top of the Bi=
tcoin
blockchain. We will develop the concept of cryptocurrencies in later sectio=
ns.
Bitcoin has no borders and was created as a decentralized payment system, an
alternative to currencies issued by governments. Let us look at what it mea=
ns
to be a currency.
Purpose of currency:
· Medium for exchange
· Store of value over time
· Accepted as a measure of worth
According to Invest= opedia, “Fi= at currency is money a government issues that is not backed by a commodity like gold. Fiat money is backed by the government and it has value because the government says so and the citizens believe it. The dollar is an example of= the United States fiat currency”.
Apart from the government issuing Fiat, a centralized
authority needs to keep track of assets. Banks, credit card companies’
stockbrokers are companies that represent a centralized authority that cont=
rols
your money.
Bitcoin is transacted over the Bitcoin network, which = is an open, public blockchain network. If you have an Internet connection and a Bitcoin wallet application, you can receive and send the cryptocurrency Bitcoin. Cryptocurrencies like Bitcoin have value because it can be proven = with math. Unlike banks offering centralized services, you are responsible for y= our cryptocurrency.
Bitcoi= n and cryptocurrencies are great use cases for blockchain, but they are just one component of the technology. Some privately run blockchains do not use cryptocurrencies as a function of their blockchains. Blockchain technology = can easily transfer anything from property rights, stocks, and even artwork. Th= ere are many more use cases that utilize blockchain technology far reaching than currency transfer.
In this section, we're gonna talk about what blockchai= n is: a real simple introduction to the basic concepts and principles behind blockchain.
When you hear about blockchain, you probably think of = new, high-emerging tech.
Well, really, all blockchain is, is a combination of technologies that have existed for a long time.
They're simply combined in a new and creative way to g= ive us an amazing new platform on which we can start to build solutions.
Blockchains are often referred to as digital decentral= ized ledgers.
And when you think of that, all you can think of is something we're all familiar with: a simple notebook.
When we talk about blocks and blockchain, all we're re= ally talking about is a page of data.
We fill up this page with any kind of data imaginable,= and, while most of the time today, we're talking about recording financial transactions on this page, or this ledger, or this block, we can record any kind of data we want.
In fact, you can think of a block as being exactly lik= e this piece of paper, in that the paper doesn't know or care what kind of informa= tion you're recording on it.
And just like the paper doesn't know or care, neither = does the block in a blockchain.
So, while most of what we're recording today are finan= cial transactions, we could also record things like voting records and results, = land titling, medical records, or even the opening notes to a Beethoven symphony= .
What makes this blockchain notebook incredibly powerfu= l is that all the pages are linked together.
So that if I go back and try and change any data on an= y page anywhere in this notebook, I break a link in a very obvious and easy-to-determine way.
This gives blockchain a key property known as immutabi= lity.
And it's what gives blockchain the security that we've= come to know and depend on.
Blockchains also give us an incredible technology call= ed smart contracts, which allow us to programmatically define the rules and st= eps that should be performed any time a certain type of event is recorded in our blockchain or in our magic notebook.
So, when you think about blockchain, don't get intimid= ated thinking it's something high tech, and new, and cutting-edge.
It's simply a new and creative way of combining old id= eas together to give us an incredible new solutions platform.
And the rest of this series will take a deeper dive in= to these basic concepts and principles, but if the idea of this unchangeable linked notebook makes sense, congratulations!
You already understand all the major principles and co= ncepts required to understand what blockchain is and why it's so powerful.
A block on a blockcha= in can be thought of much like a page in a notebook. Data is stored on a block, ju= st like data is written on a page of a notebook. Similar to a sheet of paper, = the digital ledger doesn't care what kind of information you're putting on it. = So, while most of what we're recording today are financial transactions, we cou= ld also record things like voting records and results, land titling and medical records, etc. What makes this blockchain notebook incredibly powerful is th= at all the pages are linked together. So that if you go back and try and change any data on any page anywhere in this notebook, you break a link in a very obvious and easy-to-determine way.
Any data can =
be
stored on the same block. Examples of stored data include:
·&nb=
sp;
Medical recor=
ds
·&nb=
sp;
Property
agreements
·&nb=
sp;
Voting=
Each block is chained= or tied to the previous block by embedding the block with information from the prev= ious block (we will go through this in depth later in the course).
If the data is tamper= ed with anywhere in the chain, the links will break in a very obvious way:= p>
This provides immutab= ility and security.
Blockchain is a combi=
nation
of several other underlying technologies that have never been combined so
successfully. Here are some features that make this new technology so
revolutionary.
A ledger is a collect= ion of transactions. It is not a collection of assets. Assets are part of a transaction, but the ledger records the transaction. With a digitally distributed ledger or a blockchain, no one owns the ledger. The ledger is distributed among participants in the network, all running the same blockch= ain protocols. It is decentralized in that an identical copy of the ledger exis= ts on every node/computer on the network. In 2009 with the publishing of Satos= hi Nakamoto’s whitepaper “Bitcoin: A Peer-to-Peer Electronic Cash System” , = Bitco= in became the first application to leverage blockchain technology by recording the first asset transfer on a public blockchain ledger.
The ledger is
stored, updated, and maintained by a peer network. Nodes form the
infrastructure of a blockchain network. They store, spread and preserve the
blockchain data, so a blockchain exists on nodes. All nodes on a network fo=
llow
the same rules of operation or protocols, but nodes have different roles. A
full node contains a c=
opy
of the blockchain protocol, transaction history of the blockchain and aids =
in
the maintenance of the blockchain. User node interacts with the ledger. With
blockchain technology, a lack of a centralized authority is replaced with a
peer-to-peer network.=
Blockchain networks c= an be public or private. A p= ublic blockchain is open to anyone with an internet connection and the appropriate application. A private blockchain grants access and rights to its users bef= ore they can interact.
In a blockchain, we c= an see all the transactions that have occurred on the shared or distributed ledger= . A blockchain stores details of every transaction that occurred since the first transfer. This first transfer, along with some system information that we w= ill discuss later, becomes the first block in our chain and is referred to as t= he genesis block. Since every node shares a copy of the agreed-upon ledger, th= ere is no friction about the transactions, everyone has the same agreed-upon co= py. Centralized systems are not transparent, the information about the ledger i= s controlled by one authority.
Blockchain ledgers are
different from centralized ledgers because network participants have an
agreement upon what is in the identical ledger. In order for the blocks to =
be
added, all the nodes in the system come to agree as to what transactions are
accurate and should be added to the chain of blocks. Since there is no cent=
ral
authority telling the nodes which transactions are valid, a new way to reach
agreement or come to consensus
The way in which each blockchain comes to consensus is built into the protocol, they are the rules built into the code that determine how the nodes will add ledger transactio= ns. The Bitcoin network uses a proof of work consensus model. This process of building agreement among a group of mutually distrusting participants is a benefit of blockchain consensus.
Encryption and crypto= graphy are combined with blockchain technology to assure the information on the blockchain is authentic. In our previous real-world example, the music shar= ing companies not only had legal issues from copyright infringement, they also could not solve the data integrity problem. Music downloaded from these platforms was only as reliable as the anonymous person storing and sending = it. The data had no integrity. Cryptography and blockchain offer a secure way to prove something is authentic. Instead of relying on third-party, trust is p= ut into cryptographic algorithms that prove the provenance and authenticity of= an attestation.
Some blockchains offe= r an additional feature, smart contracts= em>, that impose logic into the system. If you thin= k of the Bitcoin blockchain as a calculator recording financial transactions, you can think of these blockchains as computers. The first of these blockchains is Ethereum, cre= ated by Vitalik Buterin, Joe Lubin and team. Ethereum runs the EVM, Ethereum Vir= tual Machine, which has the ability to impose digital agreements or smart contra= cts. A smart contract is a program that runs on a blockchain that can impose contractual agreements. Typically, they work as digital agreements that enf= orce a specific set of rules. These rules are predefined by computer code, which= is replicated and executed by all network nodes. Blockchain smart contracts al= low for the creation of trustless protocols. This means that two parties can ma= ke commitments via blockchain, without having to know or trust each other. They can be sure that if the conditions aren't fulfilled, the contract won't be executed. Other than that, the use of smart contracts can remove the need f= or intermediaries, reducing operational costs significantly.
With new
technology comes new opportunities and this holds true for blockchain. As t=
his
nascent technology matures, more positions are needed to fill this increased
demand. A few of these new positions are listed here:
Entry Level and Internship Posi=
tions
Mentorship programs=
and
internships include assisting in the designing and developing blockchain
distributed ledgers based on both public and private or permissioned
blockchains. With open-source, development and success depend on an active
community, Working Groups and
Hackatons are available for the newcomer. Skills include basic blockchain
knowledge and some familiarity with basic programming languages.
Blockchain Architect
For a blockch=
ain
solution to be functional, it first needs to exist. The blockchain architec=
t is
the person or group who designs and implements the back=
end
code of the blockchain. The blockchain architect works with blockchain
engineers and technical leaders to identify the blockchain structure for
specific use cases. Architects understand consensus mechanisms, cryptography
systems, key management techniq=
ues
and smart contract management. Qualifications include Go, Java, Javascript,=
or
any modern programming language plus project management skills.
Blockchain Developer
Developers
design, write and upload smart contracts to the blockchain. Developer design
workflows that operate with blockchains and smart
contracts. Responsibilities can include project design, smart contract
development and implementation, front end applications design and applicati=
on
deployment. Skills a developer needs can include Microsoft SQL Server, Visu=
al
Studio, .NET, MVC, AJAX, SQL, C,
Python, Solidity, C++, C#, Javascript, Node.js, JQuery, SOAP, REST, FTP, HT=
ML,
XML, XSLT, XCOD, Neural-networks, Regression, Agile Scrum, MYSQL. Solutions=
are
developed for Hyperledger Fabric, Ethereum, Quorum Ripple, Corda and other
distributed ledger
solutions.
Blockchain Operator
Once the blockchain
solution is designed and built, operators can join to create the peer netwo=
rk
mentioned previously. The role of operators (nodes) is to store copies of t=
he
ledger and keep their copy up to date by distributing transactions and new
blocks throughout their net=
work
via peer-to-peer communications.
Blockchain Regulator
Many business=
es
operate under regulations regarding how their data should be stored and
processed. This is the same for blockchain solutions. Regulators rarely
interact with the blockchain directly, rather oversee regulatory requiremen=
ts that need t=
o be
considered in blockchain development. With governments researching Central =
Bank
Digital Currencies, governing these blockchains will become increasingly mo=
re
complex.
Blockchain Project Managers=
Project manag=
ers
are the first persons in an organization who are contacted when a company w=
ants to bring
blockchain in house and adapt it to their technology platforms.
Responsibilities include deciding if a blockchain solution is a good fit fo=
r a
business situation. If the decision is to move forward, Project Managers wo=
uld
organize key players and resources
needed to execute the blockchain project.
Data Storage and Processing
Managers
The blockchain
provides distributed, immutable storage with built-in integrity checking, b=
ut
certain limitations exist that have to be managed. Data decisions need to be
made dealing with maximum capacity based on the standard blo=
ck
size and block rate. Policies need to address how to provide integrity
verification for large amounts of data, should data be stored off-chain wit=
h a
hash of the data stored on-chain. eMembers of the peer network must execute=
the
code to remain in sync =
with
the current state of the network. If smart contracts commonly require large
amounts of processing power to complete, devices external to the peer netwo=
rk
may be used to augment the processing power of the network.=
span>
Blockchain Data Scientists<=
br>
Blockchain has
the ability to collect large amounts of data. T=
he
Blockchain Data Scientist collects, interprets, analyzes and manages data.
Developing algorithms that can analyze patterns in large data sets, the data
scientist provides insight into the data collected.
Blockchain Quality Engineer=
This position=
is
responsible for ensuring quality in all areas of blockch=
ain
development, such as automation frameworks and tests, manual testing and
dashboards to support mobile, web and platform engineering. A quality engin=
eer
will need to research and advise on blockchain tools and develop quality
assurance (QA) automated te=
st
standards, as well as define, write and implement test automation strategies
for load performance tests. Applicants may also need an engineering managem=
ent
MBA degree.
Blockchain Legal Consultant=
or
Attorney
A blockchain
legal consultant is responsible for advising companies on how to structure blockchain
endeavors. Advise on how to structure and govern initial coin offerings, so=
me
of which are now coming under greater regulatory scrutiny. Attorneys will a=
lso
be tasked with developing legal partnerships and contracts as blockchain
technology offers
"smart contracts", which are self-executing based on previously
agreed terms. Duties can include designing legal partnerships that would
connect the crypto ecosystem with existing financial structures, and suppor=
ting
various merger-and-acquisition activities, su=
ch
as negotiating and drafting legal agreements and performing due diligence on
blockchain projects.
Blockchain Web Designer
A decentraliz=
ed
community needs to keep the community that supports it informed. When inclu=
ding
the use of cryptocurrencies in your business and when launching blockchain<=
span
style=3D'mso-style-textoutline-type:none;mso-style-textoutline-outlinestyle=
-dpiwidth:
0pt;mso-style-textoutline-outlinestyle-linecap:round;mso-style-textoutline-=
outlinestyle-join:
bevel;mso-style-textoutline-outlinestyle-pctmiterlimit:0%;mso-style-textout=
line-outlinestyle-dash:
solid;mso-style-textoutline-outlinestyle-align:center;mso-style-textoutline=
-outlinestyle-compound:
simple;mso-effects-shadow-color:black;mso-effects-shadow-alpha:100.0%;
mso-effects-shadow-dpiradius:0pt;mso-effects-shadow-dpidistance:0pt;mso-eff=
ects-shadow-angledirection:
0;mso-effects-shadow-align:none;mso-effects-shadow-pctsx:0%;mso-effects-sha=
dow-pctsy:
0%;mso-effects-shadow-anglekx:0;mso-effects-shadow-angleky:0'>s, there will=
be
a greater need for websites to inform customers what a company is offering.=
A
blockchain web designer will need to come up with original concepts, creati=
ve
graphics and "mind blowing" user interfaces and dashboards to eng=
age
a diverse and inclusive
community.
Blockchain Consultants
Blockchain
consulting companies and blockchain consultants are tasked with advising
companies on designing and implementing blockchain solutions. This includes=
the
documentation and maintenance of solutions, as well as their initial
implementations.<=
/span>
NFT Graphics Designer
NFT stands fo=
r a
non fungible token, a
special token that represents a unique ID that is linked to a piece of cryp=
to
art that cannot be replicated and is used to verify ownership of a piece. T=
he
collectable world is jumping in head first and creating non fungible tokens
that represent art, mu=
sic,
memorializing events, newspaper articles and record releases. Designers are
needed to turn these moments/media into art for the thirsty NFT market.
There are a lot of really interesting use cases being explored with blockchain right now.
When you first get into blockchain, one of the areas y= ou'll see people immediately jump to are healthcare, how can we manage our person= al health information on the blockchain, and voting an election reform, and bo= th of these are really, really interesting ideas.
The goal behind the folks looking at blockchain for healthcare is the idea that it would be great if your medical records could= be accessible with your permission to anyone else, anywhere on the planet.
If you're halfway across the world on vacation and you= fall ill and end up in a hospital, wouldn't it be great if the doctor treating y= ou had full insight into your medical records, knew any allergies you had, or = knew any prescriptions that you were already on?
That's a very, very big area, and this ties a lot into blockchain and Identity Management.
How do we safely identify and protect people's persona= l data on blockchain?
A lot of interesting challenges there that are being w= orked out...
Blockchain for voting and election reform is a big top= ic right now, especially with all the conversation lately about how do we ensu= re the integrity of elections and demonstrate that our results haven't been tampered with or altered.
This is an area where blockchain could add a lot of va= lue.
And then, of course, we hear a lot about traditional u= se cases, areas that are getting a lot of traction in blockchain right now.
Probably one of the biggest are supply chain, value ch= ain relationships, which are very, very common in today's economy.
We have very, very few products or services that are o= ffered completely and solely by one organization, without the involvement of other vendors, partners, suppliers, manufacturers, third-party organizations, etc= .
Blockchain to track the supply, the origin of the good= s and services that we consume is a big use case.
Walmart is really pioneering this right now with a blockchain solution that they're using to identify the provenance of meat, where does the meat that is sold in a Walmart store come from, and the ulti= mate goal here is that, when we do have contaminated foods, and we have to issue= a recall, currently, because we just don't have good insight into that supply chain, we recall and destroy a lot more food than we really need to, which = is tremendously wasteful, especially with all the people on the planet that we could be giving that good food to.
These are some real, real exciting areas that we see b= eing pursued in blockchain right now.
On the public sector, there's a lot of interest in blockchain for law enforcement purposes.
How do we allow different law enforcement agencies at = the federal, state, county, city level, all to share data seamlessly, in a safe, secure fashion, which also protects people's personal privacy and anonymity, when appropriate.
Another area where blockchain is getting explored and = is generating a lot of excitement is with artists, with people who produce content.
If you're an author, if you're a musician, if you're an artist, traditionally, you've only been able to get your work out to the public, in the hands of the public, by going through a third-party intermediary.
If I'm an author, traditionally, the only way I've bee= n able to share my creation with the general public has been going to a publishing company and getting my works published.
Blockchain enables lots of interesting scenarios where= I can sell that work directly to consumers, create new subscription models, and t= his is having very interesting effects on the work itself.
One of the things we're seeing is that traditional book publishing, there's anywhere between 12 to 18 months delay between when the author finishes the last word of a book and when it actually ends up into t= he consumers hands.
Well, if we can use blockchain to enable consumers to purchase this material or subscribe directly to the content creator, we take that lag time completely out of it.
And this allows authors and content creators to do some really interesting things.
You could write a fictional story and have one of your characters respond real-time to a news story that actually happened last we= ek.
It makes for very compelling reading and it's just som= ething we're not able to do today in the traditional publishing world because of t= hat delay.
We also see a lot of interest in blockchain for fracti= onal asset ownership scenarios.
We know we're 10-15 years away from having self-drivin= g cars be a very regular thing, and when we all get our own self-driving car, if w= e're smart, we're gonna have that car take us to work and then turn around and perform ride-sharing services throughout the day, when we're not using it, = in order to recoup some of that investment.
Well, in a blockchain world with coins and tokens, we = can fractionalize that asset ownership, and I can take that same money I used to buy one self-driving car which operates in one city, and I could buy one percent of a hundred self-driving cars in the hundred's biggest cities on t= he planet.
And so, if they're ever weather conditions, where mayb= e my car couldn't operate locally, that's okay.
I have a much more diversified investment, which conti= nues to offer returns, because I have a virtual guarantee that any major city th= at I have one percent of my car ownership in is currently in rush-hour right now= , in peak times of people needing a ride.
There are lots of very interesting use cases for block= chain in the real world right now.
I would encourage all of you to dig in a little bit mo= re, and see some of the interesting things that are going on with blockchain in healthcare, in public sector, in insurance, in supply chain, value chain an= d more, see what other folks are doing, and then go out and make your own blockchain dreams a reality.
A Business to
Consumer (B2C) is business or transactions conducted directly between a com=
pany
and consumers who are the end-users of its products or services. Services
being provided to the consumer is an area of interest to companies. Benefit=
s to
the consumer are transparency to the consumer, accountability from supplier=
s,
ethical sourcing validation, labor verification and an immutable shared vie=
w.
Vertical mark=
ets
see the advantage to the transparency feature in blockchain. Financials,
logistics, charity funding, agriculture and ethical sourcing tracking are a=
ll
markets leveraging blockchain to offer new insights to the customer.=
Approach: The blockchain collaboration, known as&= nbsp;TrustChainTM, will track and authentica= te diamonds, precious metals and jewelry at all stages of the global supply ch= ain, from the mine to the retailer/consumer.
Result: The jewelry industry can now track and authenticate diamonds and precious metals through every stage of the supply chain. Blockchain provides physical product verification, process verificat= ion and servers as an ethical oversight.
With a
decentralized approach, blockchain removes the middleman (such as banks
and brokers) to facilitate faster and less expensive payments. The shared
ledger approach also eliminates the need for multiple paper copies
that need to be verified and updated frequently.
Industries li=
ke
finance, international tr=
ade
and commerce, food supply chains are taking a serious look at blockchain.=
span>
·&nb=
sp;
Approach: DLT Labs along with Walmart Canada initiated a tracki=
ng
program tackling the enormous problem in the freight and shipping industry =
of
dispute resolution in disparate invoicing systems. The solution connects all
points on the supply chain with a shared trusted ledger. This eliminates the
root problems that cause invoice disputes. The carriers are a vital link in
Walmart's supply chain backbone, and the DLT solution ensures invoicing sys=
tems
run smoothly.
· Result: Demonstrable transformation of freight management and carrier relationships by implement= ing a shared DLT invoicing system with trust and transparency build-in, reduces disputes among organization by 95%.
One of the coolest things about blockchain is some of = the unintended consequences a good blockchain solution might have.
Let's look at an example.
Right now, there is a lot of attention being given to = how blockchain might be used, in general, for supply chain relationships and, specifically, in the food supply chain.
Let's pretend that you have a very young child and your child has a serious pesticide allergy.
Of course, when you go to the grocery store, you make = sure that you only buy the produce in the produce section that has the USDA orga= nic label.
It's just a little sticker that goes on the produce.= p>
You buy your produce and you stand in the checkout lin= e, and you feel pretty good that the produce you're buying actually is organic and= has been treated with all-natural pesticides, and won't make your young child s= ick.
But sometimes you wonder, standing in line, how do I r= eally know? How do I really know that someone didn't just print up a bunch of the= se stickers in their basement and apply them at the last minute?
The blockchain can go a long way to solving that probl= em and providing much greater insight.
Let's say, you're standing in the grocery store one da= y, and instead of the easily forged stickers, you're able to pull out your phone a= nd scan a QR code.
When you scan that QR code, instantly on your phone the entire lifecycle of that piece of produce pops up.
You can see the date that it was planted on the orchar= d.
You can see after it was planted that an organic pesti= cide company came along and treated it with an all-natural pesticide.
You can even verify that the pesticide is natural by s= eeing the ingredient list in that pesticide.
And finally, you may see who actually delivered that p= roduce to the store.
Let's say that there's a new green electric trucking c= ompany out there - Ed's Electric Trucking.
Ed has seen all the fancy new Tesla semis. He thinks t= hey're great and he is committed to providing a transportation and logistics compa= ny which is also environmentally friendly.
Now, in today's world, you don't have a way of knowing= about someone like Ed and his electric trucking company.
There just aren't good ways for folks in the B2B space= to communicate their business value directly to consumers.
This is an interesting potential byproduct of using blockchain and smart contracts as a business solution.
Not only would I, as a consumer, have greater insight = into the origin of that produce and feel much better standing in the checkout li= ne, but maybe what Ed's doing resonates with me personally.
Maybe I'm a very green-conscious consumer.
I didn't know there was such an organization as Ed's.<= /p>
And I have to buy a few more things while I'm at the s= tore, besides produce. I have to buy some deodorant, some shaving cream, and some laundry detergent.
When I buy that deodorant, shaving cream, laundry dete= rgent, I only buy the ones that were delivered by Ed's Electric Trucking.
This gives Ed and other B2B players a new and exciting= way to establish brand and gain mindshare with the consumer that they currently don't have.
Certainly, it was not the original problem we went to = solve with blockchain, but many times, when we apply blockchain to a real-world problem, we find out there are a lot of unexpected benefits just like this.=
Look for blockchain not just to transform the areas th= at we're aware it might make a difference in, but also to provide some new exciting and unintended benefits.
The public sector is = the part of the economy composed of both public sector and private sector enterprises that are operating on behalf of the public. It is the business of taking ca= re of the people. Public sector includes all government, military, police, pub= lic health and welfare, infrastructure, etc. Public sector organizations levera= ge blockchain technology to move away from siloed and inefficient centralized systems. Current systems are inherently insecure and costly, with duplicated and in-efficient workflows. Blockchain networks offer more secure, agile, a= nd cost-effective structures.
So, when people first start getting into blockchain, o= ne of the areas they really start to look at is where is blockchain being used in= the real world, what examples do we have of a blockchain being deployed and at = what scale.
And there's really no better example of this right now= than what's going on in Dubai.
Dubai, the largest city in the United Arab Emirates, is piloting a very ambitious program called smart Dubai 2021.
And what Smart Dubai 2021 aims to do is to move all governmental operations and record-keeping on the blockchain by the year 20= 21.
The goals of this program are increased transparency i= n the government operations, increased efficiency, and by proxy, providing better service to city residents and constituents and establishing Dubai as a thou= ght leader, an industry leader in the blockchain space.
There are lots of really cool applications that tie in= to this.
Blockchain is becoming the enabling layer for a lot of= other Smart Dubai initiatives around creating a smart city.
So, projects like automated traffic signals, registrat= ion of citizens for governmental services, etc. are all being pioneered on blockch= ain.
So, if you want to see some of the really exciting use= cases in blockchain right now, be sure to check out Dubai and what's going on with their Smart Dubai 2021 initiative.
·&nb=
sp;
Approach: To make Dubai the happiest city on Ear=
th
by recreating everyday experiences for residents and visitors of Dubai, mak=
ing
them more personalized seamless, efficient and impactful. The Smart Dubai strategy will be using three essential
pillars: government efficiency, industry creation and international leaders=
hip
· Result: By the end of 2021, Dubai government will go completely paper-free, eliminating more than one billion pieces of paper used for government transactions every day. When successful, Dubai wi= ll be the first blockchain-powered government driving the future economy.
Blockchain is
having far reaching effects in major industries. Let’s take a look at three
major industries having a positi=
ve
influence from this new way to organize our information:
·&nb=
sp;
Supply chain<=
br>
Blockchain is
used in supply chains to gain transparency and traceability. This has a spe=
cial
advantage for global health when used in traceability to the food supply ch=
ain.
By tracking food on a blockchain, you are building trust into=
the
system through the transparency feature. In the event of a problem, blockch=
ain
technology can pinpoint the exact location and cause of a food health issue=
. By
instantly tracing food issues back to the source, all contaminated lots can=
be tracked and d=
ealt
with instantly.
·&nb=
sp;
Global trade<=
br>
Blockchain is maki=
ng
headway in the global trade markets with transparency and immutability that
offer new relationships among distrusting parties. Blockchain makes sure all
relevant parties have access to the same information. Trade barriers are
reduced, from settlement
issues, to compliance and regulation, information is being shared and acces=
sed
in new secure ways. A distributed ledger technology (DLT) opens up a new av=
enue
for securely sharing data that guarantees accuracy while removing banks as =
deal
facilitators. Smart
contract and microfinancing alternatives allow all size companies to seamle=
ssly
trade across borders.
·&nb=
sp;
Digital ident=
ity
(self-sovereign identity and verifiable credentials)
Users of the
Internet were all but unaware that all the information given so freely when
interacting with companies online, was being
stored and sold. Data became a siloed commodity owned by everyone but you. =
With
new blockchain technology, individuals can reclaim their identity informati=
on
breaking the need for data silos, endless passwords and hackable databases.
Self-sovereign identity=
(an
individual identity holder controls their credentials and can use them with=
out
permission) gives secure identity verification designed to bring trust and
personal control so people can prove things about themselves using trustwor=
thy
verifiable digital
credential.
In this chapt=
er,
we discussed:
·&nb=
sp;
The history of
the Internet and how blockchain technology relies on Internet technology as=
the
foundation for building the future of the blockchain evolution.=
span>
·&nb=
sp;
The difference
between blockchain and Bitcoin.
·&nb=
sp;
How blockchain
functions.
·&nb=
sp;
Blockchain
concepts and characteristics: distributed ledger, peer to peer, transparent,
consensus, encryption, immutability, programmable.
·&nb=
sp;
Blockchain us=
ers
and their roles.
·&nb=
sp;
Emerging general use
cases.
In this chapt=
er,
we will discuss distributed
ledger technology, some of its basic components and how it differs from
previous ledger storage techniques. We will gain an understanding of how
previous computer technologies like file sharing, data storage and cryptogr=
aphy
are wrapped into the blockchain
foundations. We will also see how hashing functions and Merkle tree data
structures help us immutably store and prove facts without revealing all the
details.
Next, we
will learn how these blockchain techniques are fundamental in public-k=
ey
cryptography where key pairs support privacy and authenticity by =
only
exposing the public key while keeping the private key secure. We will exami=
ne
how this agreed-upon, append-only distributed ledger guarantees transparency
and immutability, where trust in the information contained in the ledger is=
a
given.
By the end of
this chapter, you should be able to:
·&nb=
sp;
Discuss how
cryptography allows for distributed ledgers to work on a global scale.
·&nb=
sp;
Explain how
blockchain is using cryptography.
·&nb=
sp;
Define key te=
rms
of cryptography and understand basic concepts.
·&nb=
sp;
Explain the
concept of zero-knowledge proofs (ZKPs) and Merkle trees and how they are u=
sed
in blockchain technologies.
·&nb=
sp;
Discuss how
blockchain utilizes transparency.
·&nb=
sp;
Explain what =
it
means for blockchains to be immutable and how chaining provides this
capability.
In this section, we're going to discuss the core compo= nents of the blockchain, starting with a high-level view of the blockchain components.
The first blockchain component that we're going to loo= k at it's the ledger.
However, before we discuss the ledger, let's discuss b= riefly the history of the ledger.
The story of blockchain is tightly coupled with the st= ory of accounting.
Historically, humans started off with no way to prove ownership and we began with a single entry accounting system.
The single entry accounting system for the first time = in human history allowed us to prove ownership of the asset.
The ledger was associated with an owner.
The single entry accounting worked for centuries.
The issue with single entry accounting is that it mand= ated that there was a single authority, which is the reason why there was the necessity for a king or a queen to control the ledger.
In order to have trade, right, at the international le= vel, we needed to have at least two authorities.
For instance, for England to do trade with France, we = had the owner of the ledger, the single entry ledger, in England for instance, doing trade with the king or queen of France, who also had their ledger.
And so, we needed a new form of accounting, and that's= where double entry accounting came in, which was in use up until very recently, n= ow, within the last 40 years.
What blockchain is? Blockchain is the very first implementation of triple entry accounting, where we have an asset being recorded on the ledger in the context of a transaction.
The third entry and triple entry accounting is cryptog= raphy, where we have a cryptographic account of the transaction stored permanently= and immutably on the ledger.
That's what the ledger is. A ledger is a collection of transactions.
It is not a collection of assets. Assets are part of a transaction, but the ledger records the transaction.
In blockchain, the differentiator is that no one owns = the ledger, or all of the participants own the ledger.
The ledger is distributed. It is, in other words, it's decentralized. So, there's a copy of the ledger that exists on every node t= hat exists on the network.
Said simply, the ledger is a distributed immutable rec= ord of a collection of transactions.
Bitcoin is the most popular asset.
It was the first asset to be recorded as a transaction= on a blockchain ledger, and it remains the most popular, at least in terms of ma= rket share.
That's what the ledger is.
As we move to more modern blockchains, we start to loo= k at blockchains such as Ethereum, which not only records the asset on the blockchain,
Ethereum and other public blockchains like Ethereum, t= hey also allow you to have a permanent and immutable collection of code, also k= nown as a smart contract, that runs on the blockchain.
The ledger stores the assets, the transactions that ar= e on the blockchain, and it also holds the code.
The code that's stored on the blockchain is a smart contract.
Again, a smart contract is a program that runs on the blockchain.
The blockchain is a network.
The blockchain is a ... A public blockchain is equival= ent to the Internet, complete with its own set of protocols, etc.
Private blockchains are more synonymous with an intran= et.
It is... just like we have a use case for public block= chains and public internet, we also have use cases for private blockchains and an intranet, if we're gonna stay with that analogy.
On each of these networks there are nodes. The nodes a= re going to be synonymous with the computers that make up the network.
On the nodes, they are put together by a collection of protocols.
Each blockchain has its own set of protocols that defi= nes not only the nodes, but how those nodes communicate with each other.
So, when you hear the term "peer network", t= hat's what we're talking about; we're talking about how that blockchain is put together, what are the protocols that define the peers, and how those peers interact.
Those peer networks, they store the ledger, they provi= de the updates, they effectively, they maintain the ledger.
That's what a peer is on a peer network.
On a public blockchain, it's public, and, by definitio= n, that means that anyone is allowed to join and participate in that public blockchain.
On the private blockchain, however, the situation is a little different.
On the private blockchain, we have to control who can = access your network.
Just like no company would allow... no company would a= llow anyone to access their private intranet, in a private blockchain you have t= o be asked to join, or you have to have permission to join.
A membership service is a gateway that allows users and components to enter a private blockchain.
A membership service or a membership service provider provides the services of user authentication, user authorization, component authentication, component authorization, more specifically Identity Managem= ent.
If we're talking about a private blockchain, then we h= ave to control who the members are, and not only the members.
We have to also control the nodes that access the blockchain.
As we're talking about membership, one of the key comp= onents of membership is we have to allow certain users to access the blockchain.= p>
In order to do that, we have to have a definitive iden= tity for each user.
In the blockchain, that's achieved in two ways.
One, we use PKI, to provide a public key. And that pub= lic key represents the identity of the user.
But we also need a private key that each user can hold= to prove their identity.
That private key is stored in a wallet. And a wallet i= s a collection of the user credentials. It is effectively ... it encapsulates private keys.
Additionally, in the blockchain... blockchains are sel= f-contained, or they should be self-contained.
And so, one of the key aspects for developing on a blockchain or using a blockchain is we have to have a way to interact with = the blockchain.
And one of the ways that we do that is through events.=
So, when something occurs on the blockchain, either pu= blic blockchains... most public blockchains anyway, and certainly all private blockchains, they have events that are fired when certain key actions are triggered.
This allows end-users, other systems, other users, dif= ferent components to be able to act off of the events that come from an update on a blockchain.
Some terms th=
at
are mentioned in the video we will get familiar with in later chapters, but=
are
worth a brief description for clarification:
·&nb=
sp;
Ethereum
Ethereum, like
Bitcoin, is a decentralized open-source blockchain. Unlike the Bitcoin Netw=
ork,
the Ethereum Protocol has the ability to run smart contracts. The
cryptocurrency running on the Ethereum network is called Ether.
·&nb=
sp;
Smart Contrac=
ts
A smart contr=
act
is computer code that can be run on a blockchain that executes the conditio=
ns
of an agreement.
·&nb=
sp;
Public
Blockchains
Public blockc=
hain has no barri=
er
to entry. Anyone with a cell phone and a digital wallet can transact on the
blockchain.
·&nb=
sp;
Private
Blockchains
Private
blockchains or permissioned blockchains have a Membership Services piece that gran=
ts
access to users before they can interact with the blockchain.=
·&nb=
sp;
Digital Walle=
t
A digital wal=
let
is a computer application that represents a traditional wallet. It gives the
user the ability to store a=
nd
transact cryptocurrencies through the Internet.
·&nb=
sp;
Public Key
Infrastructure (PKI)
Public Key
Infrastructure is the identity management system for instilling trust into =
the
electronic transfers of
information or value. It is the technology used to authenticate users and
information by issuing a set of key pairs (public and private).
To understand=
how
blockchain came about, we must first understand the following key principle=
s:
·&nb=
sp;
Ledgers
·&nb=
sp;
Basic account=
ing
principles in history
·&nb=
sp;
Ledgers first
appeared around 3,000 B.C.
·&nb=
sp;
Single-entry
only.
·&nb=
sp;
Chanakya, an
Indian leader, creates the first documented accounting standards.
·&nb=
sp;
Double-entry
ledger appears in 1340 A.D.
·&nb=
sp;
Tracks debits=
and
credits.
·&nb=
sp;
Tells the sto=
ry
of a transaction from both/all sides.
·&nb=
sp;
The Italian L=
uca
Pacioli, recognized as the father of accounting and bookkeeping, was the fi=
rst
person to publish a work on double-entry bookkeeping and introduced the fie=
ld
in Italy.
·&nb=
sp;
Triple-entry
accounting is an enhancement to the traditional double-entry system, in whi=
ch
all accounting entries involving outside parties are cryptographically seal=
ed
by a third entry.
·&nb=
sp;
Debits, credi=
ts,
and an immutable link to all past debits and credits.
·&nb=
sp;
Triple-entry
ledger appears in 2008 in a white paper by Satoshi Nakamoto (a.k.a., Blockc=
hain).=
span>
·&nb=
sp;
Some features
include: tamper-proof records, distributed
ledgers, double-entry+cryptography, validated, secure, and private, digital=
ly
signed receipts.
As described in the Reddit post,
"A seller books a debit to accou=
nt
for cash received, while a buyer books a credit for cash spent in the same
transaction, but in separate sets of accounting records. This is where the
blockchain comes in: rather than these entries occurring separately in
independent sets of books, they occur in the form of a transfer between wal=
let
addresses in the same distributed, public ledger, which creates an interloc=
king
system of enduring accounting records. Since the entries are distributed and
cryptographically sealed, falsifying them in a credible way or destroying t=
hem
to conceal activity is practically impossible".
Idea for the followin= g was obtained from the LinkedIn article "Explaining Blockchain: The Distributed Ledger of the Island of Yap" by Anthony (Tony) Riva.
The concept of distributed ledge's has been around for hundreds of years.
To understand the basics of blockchain, it's important= to understand how distributed ledgers work.
A distributed ledger is a collection of data with no c= entral administrator that has been agreed upon by consensus.
To understand more details, let's take a trip way back= , back into 500 AD on the island of Yap.
The Yapese people used a very unique form of currency:= the Rai stone.
Each of these stones weighed around 200 kilos, making = them difficult to move.
To exchange them as money for goods or services, they divided the stones into sections and then, they would announce to every adu= lt on the island who owned what part of each stone.
Each adult had to keep a mental ledger of ownership.= p>
Every time any Yapese conducted a trade, an announceme= nt was made to the entire tribe.
Each member of the tribe would then update their mental ledger.
In today's description, this would be called a distrib= uted ledger.
All Rai stone ownership was known to everyone, and that knowledge was updated whenever a transaction was made.
So why didn't just one member of the tribe keep track = of the Rai stones?
What if that main recordkeeper was sick, unable to do = their job, or was found to be dishonest?
If the only copy of the ledger was changed by any mean= s, wealth would be lost or gained unfairly.
The Yapese knew their distributed ledger system safegu= arded it from tampering.
Since all the Yapese knew who owned what, it would be = very difficult to fool everyone on the island.
Even if one tribe member moved away, the tribe still h= ad multiple copies of their mental ledger.
In this regard, the ledger was fault tolerant and coul= d not be easily changed, corrupted, or lost.
The tribe also decided that stones didn't have to be o= n the island to hold value.
One day, a stone fell into the ocean and the Yapese de= cided that this stone, even though it could not be seen, still held value and cou= ld still be traded.
This system of consensus by the majority of the adults= on the island with no central administrator is one of the first examples of distributed ledger.
The group shared the = ledger.
The group agr=
eed
to the ledger.
=
All changes or
transactions to the ledger were announ=
ced
to the group.
The group agr=
eed
to update all ledgers.
Let's review =
an
example on Yap Island:
Alice agrees =
to
trade Bob her stone by the pond in exchange for all of his cattle.=
span>
Alice and Bob
announce their transaction to the tribe.
Everyone upda=
tes
their mental ledger.
From this poi=
nt
on, they agree that the stone by the pond is owned by Bob.
Alice tries to
corrupt Carol, so that Carol’s ledger shows that Alice never gave up owners=
hip
of the stone.
·&nb=
sp;
Centralized
ledger, only one place to cheat.
·&nb=
sp;
Decentralized
ledger, Carol will be outvoted by the rest of the tribe, and her version of=
the
ledger will not be accepted.
If Alice want=
s to
cheat, she will need a way to convince 51% or more of the tribe to accept a=
n alternative
ledger.
We've gone through history and seen how ledgers have e= volved from stone tablets to double entry ledgers.
We even took a look at the earliest known example of distributed ledgers.
Now, let's discuss the evolution of the ledger in the = modern world.
Over the last few decades, ledgers have moved from the written form to the digital form, also known as computers and digitalized databases.
This has allowed us to be interconnected - a truly glo= bal economy.
Today, this recordkeeping system is being revolutioniz= ed again, going from the digital realm or centralized databases keeping track = of transactions to information being stored across different locations across = the globe.
This system of record, information across a global net= work, is what we call decentralized ledgers.
A decentralized ledger can be described as a ledger of= any transactions or contracts supported by a decentralized network from across different locations and people, eliminating the need of a central authority= .
When a recording is made, every participant is notifie= d of that recording.
They now own an identical copy of the record of transactions, identical to every other node on that network.
Every piece of information on a blockchain can be trac= ed back to the exact moment when it was created.
So, if an audit is necessary, information can be found= and deemed reliable.
This allows blockchain to serve as a truly reliable st= orage of public records and transactions, and therefore eliminating the need for a centralized authority of database of records.
Now that we understand the foundational principle of blockchains - distributed ledgers, it's important to understand another important key element that makes blockchain so revolutionary: trust.
Trust is created through two key principles: collabora= tion and cryptography, both of which will be discussed shortly.
As we can see by look= ing at the evolution of the ledger, we are entering a new phase where no one centralized authority has control of the details in the ledger, everyone do= es. Transactions are only added to the ledger if everyone agrees. Once consensu= s is reached, no one can go back and deny a transaction. So essentially you are = not trusting one person or entity to control the ledger, you're trusting everyo= ne. Let's look a little further into how that trust is achieved.
A great way to think of blockchain is to think of blockchain as another layer= of the Internet, a layer that enables secure and trusted records and transacti= ons to occur, which is why a lot of people associate the word blockchain with t= he word trust.
Blockchain creates a layer of trust between untrusted parties.
Without blockchain to create trusted records and transactions, a third party intermediary is necessary.
Blockchain eliminates the need for a centralized institution to act as intermediary, a= nd instead uses cryptography and collaboration to create that trust.
In an earlier chapter of this course we spoke about collaboration through distributed ledgers.
Now, we will be taking a further look at how cryptography is used in blockchain = to create the second element necessary for blockchain to be a source of trust.=
Information on the blockchain is stored on the ledger using cryptography.
It can be accessed using keys and cryptographic signatures.
Now, let's take a look into some of the key concepts of cryptography that are utilized with blockchain.
So, one of the reoccurring themes in blockchain is that while blockchain itself may be new and cutting-edge, it's built out of noth= ing more than very old tried-and-true technology.
And one of the areas this is most true is in cryptogra= phy.
When a lot of people first get introduced to cryptogra= phy they think it's a very new cutting-edge science.
And while there are new developments being made everyd= ay, cryptography itself is a very, very old science.
One great example of this is the story of Rose Greenho= w.
Rose Greenhow lived in the Washington DC area during t= he Civil War, and she was actually an undercover spy for the Confederate Army.=
Rose Greenhow was a wealthy socialite, and she threw m= any fancy, elaborate parties, and was also invited to many, many high-end social events.
Many of these events were attended by members of the U= nion Army, generals and strategists, who Rose pretended that she didn't know much about military strategy and wasn't too interested in the war in general.
In secret, at all these events she was soaking up all = the information she could.
Rose actually developed her own method of encrypting d= ata.
She came up with her own encryption scheme and she use= d this scheme to mail letters down to the Confederate Army, revealing the plans of= the Union Army, troop positions, general high-level strategy, etc.
Rose did this for a number of years, until finally her encryption method was broken and she was actually one of the very first peo= ple who were arrested and prosecuted by the Pinkertons, who later went on to fo= rm the Secret Service.
So, when you hear about blockchain and all the new cutting-edge things that it's doing, don't forget that it has its roots in = very old technology, and we're just combining old technology in new and creative ways to create a brand new solutions development platform.
As described in the "Ancient Uses of Cryptography: Four Examples that Pre-D=
ate
the Internet" article by Melanie Shapiro,
&qu= ot;A little over 2,000 years ago, Julius Caesar developed a simple system to send secure information to his troops. It was all about substituting certain let= ters for others, typically by shifting the letters by a predetermined number. Th= at algorithm is what we would call a cipher, and since Caesar’s invention, cip= her keys are much more secure and advanced. If you want to encrypt and decrypt information, you are going to have to choose a kind of cipher to do so"= ;.
Let's explain=
the
key terms used in cryptography:
·&nb=
sp;
Cryptography<=
br>
Cryptography =
is a
technique used to secure the communication between two parties from a third.
The term cryptography is derived from two ancient greek terms, “kryptos” wh=
ich
means “hidden” and “graphein” which means “to write”=
.
·&nb=
sp;
Secret
The data whic=
h we
are trying to protect.
·&nb=
sp;
Key
A piece of da=
ta
used for encrypting and decrypting=
the
secret.
·&nb=
sp;
Function
The process o=
r function used to
encrypt the secret.
·&nb=
sp;
Cipher
The encryp
·&nb=
sp;
Encryption
This is the
process from plain text (ordinary text) to cipher text (random sequence of
bits).
·&nb=
sp;
Decryption
Encryption is=
the
reverse process of converting ciphertext into plain text.
=
The Secret and
the Key are passed into the Function to crea=
te
the Cipher.
So, = one of the technologies that plays a pivotal role in blockchain and making blockch= ain secure and immutable is cryptography.
If y= ou've never heard of cryptography before, cryptography is simply designed defined= as the science of sending messages back and forth from one party to another, in the presence of adversaries or bad actors, participants who may wish to cor= rupt or change the contents of a message.
And = there's some key concepts you should understand about cryptography before we really dive in and talk about how cryptography protects the data on the blockchain= .
Most cryptographic functions are what we refer to as two-way functions, meaning = that we can take a secret and we can encrypt it, and then we can use that same process to decrypt the secret at the other end.
Some= of the key objects or concepts to be aware of in cryptography:
firs= t of all are the secret, what data are we trying to protect, what is the message we'= re sending back and forth that we want to do so in a safe, secure fashion, and= try and guarantee that it hasn't been tampered with.
We t= ake our secret and we combine it with a key, a piece of data that is consumed by a function, our third component.
When= the function receives the key and the secret, the function uses the key to chan= ge the data in the secret, to create the fourth and final component, which is known as the cipher.
And = the cipher is simply the encrypted message, the thing that, if it were intercep= ted, if it were seen by anybody else, any non-participants or bad actors, they wouldn't know what the secret was, they wouldn't know what the message was,= and they wouldn't know how to decrypt that cipher back into the secret.
Now = again, most cryptographic functions are two-way, meaning it doesn't do me a lot of good to encrypt data if the receiving party at the other end can't decrypt = it.
And oftentimes, all this involves is using the same key or a reverse key into t= he same function, with the cipher's input to get the secret back out.
So, = when we talk about cryptography, keep in mind those four basic components: the secr= et, the key, the function, and the cipher.
Then, understand that cryptographic hashing is a very special class of cryptograp= hic functions, which, unlike all their cousins, are only one way, meaning that = in a cryptographic hash I can put information or a secret into it, the key and t= he function are contained as one entity, and what I get back out is encoded da= ta.
I ge= t what's called a hash or a hash result, that is an encryption based on the data tha= t I put in.
That= is mathematically impossible to reverse-engineer and this is what makes it a one-way function.
If y= ou put any data into a cryptographic hash and you share that hash with me, there's absolutely nothing I can do above and beyond random guessing to try and recreate that input to tell me what your original secret was.
Cryp= tographic hashes are used in scenarios where we want to prove a piece of data without sharing that data.
So, = password management systems use this all the time.
We d= on't want to store a username and password…we want to store a username and the h= ash output of a password.
That= way, I don't know what any of my users' passwords are, but I do know that if they = put the wrong password in, they're going to get the wrong hash back out, and I = can easily validate that a user's password is correct or incorrect, without hav= ing to know what it is.
We'r= e going to dive in a lot deeper in a later module, to show you exactly through a de= mo how cryptographic hashing works, and how it provides security and immutabil= ity on the blockchain.
But = just understand these two big takeaways:
Numb= er one, that cryptography is normally a two-way function with four components: the secret, the key, the function, and the cipher, and then finally, there are a subclass of cryptographic functions called cryptographic hash functions, wh= ich exist as one-way functions, which can only encrypt the secret, and again, w= hich are mathematically impossible to decrypt the secret in any other method oth= er than randomly guessing input until you're able to recreate that hash output= .
Thes= e are key components which enable security and immutability on the blockchain.
Simple example function:
· Secret =3D "Blockchain technology is transformative"
· Function =3D Swap each letter in the secret = with a new letter according to the Key
· Key =3D "+2"
· Cipher =3D "Dnqemejckp vgejpqnqia ku vtcpuhqtocvkxg".
As mentioned in the "Ancient Uses of Cryptography: Four Examples that Pre-D= ate the Internet" article by Melanie Shapiro,
&qu= ot;(...), in the 1970s cryptologists Whitfield Diffie and Martin Hellman&nb= sp;made a landmark invention: asymmetric key encryption. It’s the concept that both HTTPS (the popular protocol used to access a secure web server discussed previously) and the secure element within a token rely on to keep your information completely private.
The principles behind it are genius. Instead of a shared key that codes and dec= odes information, the key for encrypting the information is different from the k= ey that decrypts it — that way there is no longer a shared, secret key. With t= his invention, in order to share a secret message, you no longer even have to k= now the person you are sending it to. Most importantly, for people like us who = care deeply about safe authentication and identity protection, the private key itself is never communicated at all, and that means no more shared secrets".
As you start to get more and more into blockchain, one= term that you're gonna hear a lot is Byzantine Fault Tolerance.
And if you're wondering what that means, that very str= ange, cryptic sounding term, that can be explained with a story.
In 1982, a mathematical problem was formulated called = the Byzantine Generals Problem, and without getting too detailed into the mathematics behind it, essentially, with the Byzantine Generals Problem was= a story about two empires fighting a battle.
One Empire exists within the confines of a walled city= , the second Empire has several generals surrounding that walled city, each with their armies waiting to attack.
And the balance of power is very, very evenly matched between these two empires.
And it is such that if all the generals agree to attac= k at the same time, they will have enough power to overcome the empire in the ci= ty and win the campaign.
If they, for whatever reason, they're not able to coor= dinate their attacks simultaneously, and even one general misses the message, well then, the Empire surrounding the walled city is going to lose the campaign = and the war.
So, the Byzantine Generals Problem explored a really k= ey area of cryptography, in fact, the heart of what cryptography is, which is = how do I exchange messages with someone in an environment where they may become corrupt.
You have to understand the only way these generals had= to communicate was to send a disguised messenger through the city with a messa= ge to deliver to the other generals, and so, this always posed the risk, if yo= u're a general and you're getting amessage from one of these messengers, how do = you know or how can you believe with greater than random certainty that the mes= sage you're getting is reliable and it hasn't been tampered with.
And this, again, was a problem that was postulated bac= k in 1982 and went unsolved until 2008, when the anonymous Satoshi Nakamoto prop= osed a solution to this problem.
Essentially, what the solution entails is all of the generals hiring as many mathematicians as they can.
When we talk about Byzantine Fault Tolerance, we're ta= lking about the generals having more access, having more mathematicians, or more computing power on their side than the empire within the city.
So, if I'm the generals and I can hire more mathematic= ians, then that means that I can encrypt my messages going through the city with greater and greater complexity, and if the balance of power becomes greatly tipped in the favor of the generals outside the city, they can use encrypti= on methods which are so complex, that there really is no real chance, or a very small chance that any of the mathematicians inside the city will be able to intercept that message, decrypt it, change the contents, re-encrypt it, and= do so in a time quick enough that the generals don't notice anything has happe= ned.
And so, this is Byzantine Fault Tolerance.
This is the fault tolerance mechanism that we see used= in most public blockchain solutions right now, including Bitcoin, including Ethereum, although Ethereum is working on transitioning to a system called Proof of Stake, which we'll talk about in a later section.
But, when you hear Byzantine Fault Tolerance, often abbreviated as BFT, all we're talking about is this idea that blockchains b= ecome secure if they have more computing power, more hash power in the chain than= off the chain.
Solutions like Ethereum, 16,000 plus nodes, or Bitcoin= , the largest blockchain network that there is, with over 30,000 nodes, offer us a high degree of security and immutability, because the computing power on th= ose networks is so great that there's really no reasonable chance that an adver= sary could ever control as much or more computing power to attack the data on th= at blockchain.
And if someone ever were to, chances are the economics behind it would be such that they would spend more to simultaneously harness all that computing power, than they could possibly stand to gain.
And so, this is Byzantine Fault Tolerance.
It is the root of cryptography, which is simply the st= udy of how do we send information back and forth securely in the presence of adversaries and bad actors, and it's what underlies all the security and immutability that we get in blockchain.
To understand
cryptography in blockchain, you must be able to differentiate between
various cryptographic techniques used. There are four main ways blockchain
leverages cryptography:
·&nb=
sp;
Public Key
Cryptography
This encrypti=
on
method uses a pair of keys: an encryption key, and a decryption key, named
public key and private key, respectively. The key pair generated by this
algorithm consists of a
private key and a unique public key that is generated using the same algori=
thm.
·&nb=
sp;
Zero-Knowledge
Proofs
A new approac=
h to
protecting digital secrets that prove knowledge of a secret without reveali=
ng
it.
·&nb=
sp;
Hash Function=
s
This type of
encryption doesn’t make use of keys. It uses a cipher to generate a hash va=
lue
of a fixed length. The function converts plain te=
xt
(no matter the size) into a hash of fixed size. It is nearly impossible for=
the
contents of plain text to be recovered from the cipher text. Think of it li=
ke
trying to recreate a human from a fingerprint, a fingerprint uniquely
represents a human no mat=
ter
the size of the human and you can’t reverse engineer a fingerprint to recre=
ate
the human.
·&nb=
sp;
Merkle Trees<=
br>
A data storage
technique that compresses or packs data for storing blockchains with a
tamper-free component built in. Merkle trees are built upon hashing princip=
les
in that each hash becomes a part of =
the
next hash to build a tamper resistant data storage model.
Identity in t=
he
blockchain is based on public key cryptography. A person’s address on the
blockchain is their public key.
Transactions =
on
the blockchain include their public key and are digitally signed with the sender’s
private key:
·&nb=
sp;
A digital
signature verifies that someone in possession of the private key authorized=
the
transaction.
·&nb=
sp;
Digital
signatures can be easily verified using the corresponding public key, which=
is
included in the transaction.<=
/span>
Ethereum is a public blockchain that anyone can partic=
ipate
in. Hyperl=
edger is
an example of an enterprise blockchain where participants must be granted
access to engage in the blockchain.
·
Ethereum
A user’s identity is an address based on their public key.
·
Hyperledger
Identity is managed by X.509 certificates. Certificates are only shared with
parties involved in the transaction.
Public key cryptography uses a pair of a public key an= d a private key to perform different tasks. Public keys are widely distributed, while private keys are kept secret.
Using a person's public key, it is possible to encrypt= a message so that only the person with the private key can decrypt and read i= t. Using a private key, a digital signature can be created so that anyone with= the corresponding public key can verify that the message was created by the own= er of the private key and was not modified since.
Digital Signatures and Key Pairs
Step 1:
Step 2:
Step 3:
So, I want to talk a little bit about cryptography and= some cryptography principles.
The first is easy and hard problems, and this is reall= y what public - private key cryptography is based off of.
There are some problems that are very easy one way, but difficult another way.
And a great example of this is multiplication.
So, if I give you a pen and paper and a lot of time, I= can ask you to multiply any two numbers, and you can probably come up with an answer fairly easily.
What's a lot more difficult is if I give you the produ= ct of two numbers and ask you to factor that and find out all the numbers you can multiply together to get that result, that's a much harder problem.
This is how public - private key cryptography works.= p>
We use an easy mathematical problem to generate a mess= age, but we make it very, very hard for that message to be decrypted by someone = who shouldn't decrypt it, and public and private keys play a big role in blockchain.
I want to show you right now.
I've got two different wallets. I've got a wallet that you're probably used to, that you keep money in, and then I've got a hardwa= re wallet, a digital wallet that you'd use to trade something like bitcoin or ether.
Now, what you're used to, in your regular wallet, is p= utting money in here and you keep your money in here, and if you lose this, whoever finds it gets your money and they get to spend it.
In blockchain, with cryptocurrencies, it's a little bit different.
The only thing that ever gets kept in here is your pri= vate key.
And a private key - public key work together so that I= can use a private key to sign, digitally sign, any message.
You can then take the public key, which anyone can kno= w, and use that to verify that my specific private key was the one that actually signed that message.
And so, you can know without a doubt that I'm the one = who created that message,
that no one was pretending to be me sending this messa= ge.
And this is how it works trading digital currencies ba= ck and forth.
If I decide I'm going to pay you three bitcoins and I'm gonna do it out of this hardware wallet or any software wallet, any kind of digital currency, the only thing that's kept on this device is my private k= ey and it never leaves, and so, that means if I want to send you some money, a= ll I'm doing is accessing the private key on this device to sign a message that gets transmitted to the blockchain, that says I'm paying you some bitcoin or some ether or some litecoin, and my public key is used to verify that that message actually did come from the wallet that says it did.
And this is how we trade cryptocurrencies back and for= th, and that's what makes the concept of a digital wallet a little bit differen= t.
If I happen to lose this, I haven't lost the money tha= t's in it, because there's no money ever in it.
All that money is is just a record on the blockchain, = and, as long as I can recover that private key somehow, I can just get a new dev= ice, start using my private key again and keep right on trading.
So, that's how public and private keys fit into blockc= hain; a very key component just to understand that they're used to sign and verify any transactions that you make.
Zero-knowledge
proofs authenticate
parties without the need to widely transmit private information online. A
zero-knowledge proof (ZKP) is a cryptographic method that allows a party (t=
he
prover) to prove to another party (the verifier) that a given statement is
true, without conveying any
additional information.
Let's review =
an example. Let=
's
say there are two toy cars, identical in shape and size, except, one is red=
and
one is blue. Jerry, who is color-blind, holds the toy cars behind his back.
Jerry then shows one of the cars to Sam. Jerry then hides that car behind h=
is
back and shows Sam =
the
other car. Sam can consistently detect the switch because the cars are
different colors, but he never has to reveal the color of the cars to Jerry=
in
order to prove the secret.
In this section, we're going to talk about a cybersecu= rity idea in blockchain known as "Zero-Knowledge Proofs".
Zero-Knowledge Proofs are exactly what the name implie= s - they allow me to prove to another party that I have a certain piece of knowledge without revealing what that knowledge is.
Zero-Knowledge Proofs are often referred to as zk-SNAR= Ks, which stand for "Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge", or zk-SNARKs for short, or, if you want to be simple, we c= an just call them Zero-Knowledge Proofs.
A great example of a Zero-Knowledge Proof is what we c= all the cave door analogy.
Pretend that there's a circular cave, with only one en= trance or exit and at the back of this circular cave there's a door which can be unlocked using a secret code entered onto a keypad.
If I want to prove to you that I know the unlock code without revealing that unlock code to you, all I need to show is that I can walk into one end of the cave, open the door, and come out the other end.= p>
If I've successfully demonstrated that, then you know without a doubt I've been able to unlock that door, but yet I haven't revea= led that unlock code to you.
This simple cave door analogy is a Zero-Knowledge proo= f, and if you can remember this cave door analogy, then you'll understand why Zero-Knowledge Proofs are so important in blockchain.
For example, a user may make a request to send another= user some money.
The blockchain naturally wants to make sure, before it commits this transaction, that the user sending the money has enough to sen= d.
However, the blockchain doesn't really need to know or= care who is spending the money, or how much total money they have.
Being able to answer a question of "Does a user h= ave enough money to send to another user" without knowing who the user is,= or exactly how much they have, is one of the primary use cases for Zero-Knowle= dge Proofs in blockchain.
So, when you hear about zk-SNARKs, don't get intimidat= ed.
It's not a complex idea. Just think of Zero-Knowledge = Proofs and the cave door, think about how important it is in blockchain to be able= to prove a claim without actually revealing the information behind that claim,= and you'll understand Zero-Knowledge Proofs.
When using
blockchain, the need to trust a central authority to verify the accuracy of
data is removed and replaced by trust in a cryptographic hashing function. With =
data
integrity guaranteed by algorithms, trust becomes part of the system.
Blockchain
provides users with data integrity in a trustless environment. This is
accomplished using cryptography in a way that moves the burden of trust from
data processors to cryptographic algorithms.
Hash functions
are featured heavily in blockchain. A hash function is a mathemati=
cal
equation with four important properties:
1.&n=
bsp;
Hash functions
can take anything as input and create an output with a fixed size. This mak=
es
it possible to condense anything into a piece of data of a fixed size and is
how messages are condensed for digital signatures.
2.&n=
bsp;
It’s easy to
calculate a hash, but hard to determine a hash input from the output. The best op=
tion
is to keep trying inputs until one produces the desired output.
3.&n=
bsp;
Inputs that
differ by a single bit produce hashes that differ by half of their bits on
average. This prevents someone from finding a desired hash input using a “h=
ill
climbing”.
4.&n=
bsp;
It is infeasi=
ble
to find two inputs that produce the same output when hashed. Since a hash c=
an
take any input and
produce a fixed output, it makes sense that multiple different inputs will
create the same output. A good hash function will make it so that you have =
to
try a large number of inputs before finding two that produce the same outpu=
t.
In this section, we're going to talk about cryptograph= ic hashing.
A cryptographic hash is a special kind of cryptographic function known as a one-way function, whereas most cryptographic functions = are two-way, meaning that data cannot only be encrypted, but can be decrypted at the other end.
Hashes, or cryptographic hashes, are very unique in th= at once data is encoded, it can never be decoded.
Let's look at a small example of this.
If we take a simple sentence, "Let's eat, grandma!", this input sentence will generate a unique 32-character hash output.
This hash output can be thought of as an identifier fo= r this input data.
In other words, I can input this data into a hash func= tion to generate this output, and I can share this output with anybody, anywhere, safe in the knowledge that it is mathematically impossible for anyone to reverse-engineer the original input from this hash output.
In fact, the only possible way that anybody could ever determine what this input was, was by randomly inputting data into a hash function until they were able to recreate the same output.
Another unique function of a cryptographic hash is tha= t any small change to a dataset, no matter how small, will result in an entirely different hash.
If I remove the comma from this sentence, not only do I entirely change the meaning of the sentence,
I also generate a new 32-character hash output.
This 32 character hash output remains a fixed length no matter how big the input dataset is.
To demonstrate this, let's take the entire first book = of Tolstoy's War and Peace, and paste it into our hash function.
You'll see that the most time-consuming part of this i= s not generating the hash, but simply moving all the data from the clipboard into= the input text box.
I've generated a unique 32-character output or identif= ier for this input text.
You'll notice that this is the same length hash that I= got when I had a short one sentence input, and if I change anything in this extremely large dataset, even one character, I will generate an entirely new hash output.
Let's take a look at this by removing the period at th= e end of this sentence, and replacing it with a question mark.
You'll see that by doing so, I've generated a complete= ly different and unique 32-character hash output.
Hash functions not only play a critical role in blockc= hain security by enabling blocks to be linked together in creating immutability between data on the blocks, they can also be used as a great way to identify and verify large sources of data.
Let's look at some other use cases.
If I want to build a system which authenticates users,= but I don't want to store their password directly in a database where it might be stolen or corrupted, a hash function can be a great solution.
Let's say I have a very simple password, password123, = but I don't want to store that password inside my authentication database.
I can simply ask the user to type in their password and store the hash output from that password.
Any subsequent time a user tries to log on, I don't ne= ed to know their password. I just need to verify that they're able to recreate th= is hash output.
If they can't do that, because they have the wrong pas= sword, then I can simply choose not to authenticate them into my system.
Cryptographic hashes can also be used to validate sour= ce code or real large datasets in the real world.
Let's look at self-driving cars for an example.
Let's say we've developed a self-driving car with the intelligence to hash the source code every time it starts up.
My self-driving car, every time I start the car, can t= ake its source code, run it through a hash and generate a unique identifier.
It can then share this identifier or 32-character hash output with every other self-driving car it has contact with, or even valid= ate this against a database or some other centralized data store, or perhaps an immutable record on the blockchain.
This gives me the confidence that if the source code f= or my self-driving car ever gets hacked and makes it unsafe to drive,
I'll know it right away. I'll try to start my self-dri= ving car, which will immediately hash its source code, share that hash output wi= th other self-driving cars or validate it against an authoritative source, and instantly we can see I've got an entirely different hash output letting me = know before I've gone anywhere that my self-driving car is not safe, and putting that self-driving car into a limp or shutdown mode, where it simply refuses= to go anywhere until the compromised software has been updated and replaced wi= th the right version.
Cryptographic hashes give us a way to link all blocks = on the blockchain together in an immutable fashion, such that if any one particular block or the data on any block is changed or altered to any degree, no matt= er how small, we will know it instantly and we will break the link between that block and every subsequent block.
If you haven't watched the module in this course that = covers the in-depth walkthrough of Proof of Work consensus, you might want to chec= k it out now.
We actually show how cryptographic hashing is used to = link together all blocks on the blockchain, creating a data store that is immuta= ble, secure, and extremely trustworthy.
Next, let's engage with an interactive lab. This lab i=
s an
actual hands-on demonstration of taking data and creating a hash output. En=
joy!
A special typ=
e of
data storage structure based on hash functions is called a Merkle tree:
·&nb=
sp;
It is structu=
red
as a binary tree; the leaves contain the values to be
stored and each internal node is the hash of its two children.
·&nb=
sp;
It provides
efficient lookups and protection against forgery since verifying a transact=
ion
is included in the tree. Can be accomplished by sending only the transactio=
n,
the hash contained in each node between the transaction leaf node and the
root, and the hash values used to create each hash sent.
·&nb=
sp;
Looking up a
transaction in a Merkle tree with three levels includes sending two
transactions (the desired one and the other child of its parent) and three
hashes (the transaction’s parent, the root, and the root’s other child).
=
=
Merkle trees =
are
a data structure that allows authenticated storage with efficient data
retrieval.
Blockchains use Merkle trees for fast and efficient validation of data.
Merkle trees summarize the entire set of data in a blo= ck by creating a root hash of that data.
A root hash is created by repeatedly hashing pairs of = child nodes until only one node is left.
Let's take a look at a diagram of a Merkle tree.
This diagram consists of four transactions represented= as transaction "A", transaction "B", "C" and "D".
The transaction data is then hashed and the resulting = hashes are stored in leaf nodes represented as H of "A", "B", "C" and "D".
Nodes are repeatedly hashed in pairs and the resulting hashes are stored in child nodes until only one node remains: the Merkle ro= ot or root hash.
The reason you wouldn't want to hash the entire set of= data as a string is because it's not efficient when validating transactions.
In this example, if Alice needed to show Bob that this transaction was valid, let's say transaction "C", Alice would nee= d to send the entire list of data to validate the block.
But when using a Merkle tree, Alice only needs to send= the nodes that contain the transaction that she is looking to validate.
Let's say Alice wants to validate transaction "F&= quot;.
Alice would only need to send the data of transaction "F" and four hash values to Bob.
Bob would then calculate the hash value based on the g= iven information.
And if the root matches the block, the transaction can= be assumed to be valid.
Merkle trees allow for validation of a specific transa= ction without requiring the entire set of data.
The use of public keys for identity management is a lo=
gical
choice since knowledge of a public key is necessary for verification of dig=
ital
signatures. Both Ethereum and Hyperledger Fabric use digital signatures on
transactions and blocks to verify the identity of the creator and that the =
signed
data has not been modified since signing. Public key cryptography is used in
the blockchain as a method for managing users’ identities without revealing
real world identities.
In Ethereum, users are identified by an address that is directly related to the user's public key. This provides identity verificat= ion while preserving anonymity.
In Hyperledger Fabric, users are identified via X.509 certificates. These certificates provide several pieces of information about the user, but one of these is also the user's public key.=
Hash functions are at the core of all blockchain techn= ology. One of the primary uses for hash functions is chaining blocks together. In = both Ethereum and Hyperledger Fabric, blocks include the hash of the previous bl= ock to tie the blockchain into a cohesive whole.
Zero-knowledge proofs are to increase the privacy of u= sers. Currently, Ethereum is working on a layer 2 solution, where a second layer blockchain would store large amounts of data and only prove the batch of information is valid to layer 1 (mainnet). Hyperledger Fabric has a pluggab= le cryptographic library that supports ZKP techniques for enhanced privacy measures.
Merkle trees are a data structure that allows authenti= cated storage with efficient data retrieval. Both Ethereum and Hyperledger Fabric= are smart contract platforms that use a particular type of Merkle tree called the Patricia tree to store the current state of their virtual machine.
Now, that we have an understanding of how collaboratio= n and cryptography work together to create a layer of trust, let's discuss how blockchain has a powerful disintermediation effect.
Nodes on the network are allowed to place data directl= y onto the database that is shared.
This eliminates the need for an intermediary to do such task.
As we discussed, developers can create a distributed l= edger on a blockchain, and use cryptography to give people secure storage space on that ledger.
This creates a very different world than what we have = come to know today, because for the first time in the digital world, people are allowed to own their own data.
You may be asking yourself: "How is this differen= t from the current technology?".
Today, organizations use our data, sell our data, stor= e our data, and exchange our data.
Data is an extremely powerful asset and to own your ow= n data is a vast change to the current system.
In a world powered by blockchain, having ownership of = your database is truly empowering.
You can now share the information that you choose with= any organization that you desire.
The power of blockchain and owning your own data is the ability to transact peer-to-peer.
With the current system of intermediaries, when you go= out to eat at a restaurant, and you pay with your credit or debit card, you're = not paying the restaurant directly.
Instead, a database record at your bank is being debit= ed and the database record at their bank is being credited.
In this example, the value and data in the database be= long to the intermediary, and not the individual.
You are then dependent upon them to secure and validat= e your transaction, which shifts the power to the intermediary.
But in a blockchain world, the individual has their own ledger record, and the secure key that allows them to access it.
You no longer need an intermediary.
A transaction is simply debited from your record and credited directly to somebody else's record.
Blockchain allows you to have the power to control mor= e than financial transactions.
Later, we'll take a deeper dive into how the healthcare industry may utilize blockchain to allow people to own their own health records.
And with blockchain, you can determine who can access = those records.
We talked about how cryptography and collaboration cre= ate trust.
Now, let's examine how peer-to-peer transactions with blockchain create transparency which can lead to even another layer of trus= t.
This layer of trust can aid to curb corruption and even create cost savings.
Currently, the data and records owned at centralized organizations are stored and hidden within a database.
These databases for the most part are inaccessible and= do not communicate in an effective manner with other systems.
This also makes it easier for a corrupt individual or = persons within the centralized organization to manipulate these records.
Because of the possibility for manipulation and foul p= lay, there are many flawed and expensive safeguards put into place.
These safeguards are done through regulations and legal requirements creating expensive overhead and delays.
Besides the mounting cost to safeguard these internall= y, there are also many necessary safeguards from external forces, because they= are individual points of critical data storage, bad actors have to identify only one point of failure to access.
The combination of one central point of storage and the storage of valuable data make these centralized databases a very enticing target for malicious persons.
With blockchain, these malicious actors would have to = identify and target numerous points of failure until they control more than 51% or what's known as consensus.
In most blockchains, it could be up to hundreds of tho= usands of points of weakness that would have to be exposed to be corrupted.
It's nearly an insurmountable task.
Not only must a centralized organization worry about b= ad actors, but they must do so, while still allowing access and synchronizing = with other centralized organizations.
Having to constantly update and synchronize data acros= s many centralized databases is not efficient.
The cost is high and the vulnerability to bad actors is amplified.
All the more reason blockchain solutions are so exciti= ng.
Blockchain offers efficiency. It also creates trust and financial benefit through transparency, security, immutability, and accessibility through ownership.
A database is a colle= ction of interrelated data organized so that individual records or groups of records= can be retrieved to satisfy various criteria.
Traditional
databases use the CRUD method which has four main operations:=
·&nb=
sp;
Create - add a
new value to the database.
·&nb=
sp;
Read - read a
value from the database.
·&nb=
sp;
Update - chan=
ge
an existing value in the database.
·&nb=
sp;
Delete - remo=
ve
the value from the database.
Traditional
databases do not retain historical
information:
·&nb=
sp;
Only the most
recent versions of each value are visible.
·&nb=
sp;
Deleted values
are not visible in the database.
·&nb=
sp;
This limits t=
he
transparency of data contained in the database.
·&nb=
sp;
Values can be
modified or deleted after creation.
The CRUD upda=
te
model of databases allows data to be changed or removed from the database. =
This
means that the visible data in a database is not an accurate
historical record of the database. The existence of an update operation mea=
ns
that each value in the database is only the most recent version of that val=
ue
and could have had different values in the past. The delete operation means
that values can be remo=
ved
from the database.
This limits t=
he transparency =
of
data in the database since values can be modified or deleted after creation=
.
The blockchai=
n is
designed to be a data structure that only allows appending:
·&nb=
sp;
The past hist=
ory
of the blockchain is visible and immutable.
·&nb=
sp;
Updates to the
blockchain can be performed by including them in new
blocks added to the blockchain.
The blockchain is
designed as a data structure where each block in the chain locks in the val=
ue
of the previous block and so on, back to the first or =
span>genesis block. =
This
means that the blockchain is an append-only data structure without support =
for
modification or deletion.
The entire
history of the blockchain is publicly visible and stored in a distributed a=
nd decentralized
fashion. Values in the blockchain can be “updated” by appending a new versi=
on
of that value in a later block, but the complete history of the value is
preserved.
The blockchain is des= igned so that its entire history is visible and unchangeable. Transactions in the blockchain cannot be modified after creation, and their complete history is publicly visible. This means that the blockchain is a completely transparent data structure with the useful property that the integrity of the blockchai= n is easily verifiable by any user.
Traditional
databases and the blockchain were created for different purposes and have
different levels of transparency. Traditional databases have l=
ow
transparency since values can be modified or deleted; however, this
changeability allows them to store data in an efficient manner, with only t=
he
most relevant versions of each value retained in storage.
The blockchai=
n is
publicly visible and immutable, meaning that it has very high transparency. Its
append-only structure and decentralized storage sacrifice storage efficiency
for trustworthiness of the stored data.
One of the big benefits we get in any blockchain solut= ion, public or private, is the idea of transparency.
In a public blockchain solution like Bitcoin or Ethere= um, because they're anonymous and we have no concept of identity, we have no wa= y of treating users differently.
And so all data on a public blockchain is transparent = and visible to all other participants.
And this is really important. It adds a lot of value, = when we're talking about exchanging currency or tokens of monetary value, becaus= e as long as we can protect the anonymity of the participants, it gives us a gre= at way for anybody to validate the details of any transaction on a ledger that= is immutable, permanent, can't be changed and offers a high degree of trust.= p>
This also has a lot of other really interesting potent= ial use cases that we're starting to explore with public blockchain technology, voting and voter registration, tracking election results.
These kinds of things are really, really great use cas= es for having that level of public transparency.
On public blockchains, there's another kind of transpa= rency, which adds a lot of value as well, and that is full transparency into the s= mart contracts that execute on that blockchain.
These, oftentimes, are smart contracts which have the potential of working with other people's money, sometimes large amounts of other people's money, and if you're going to entrust your hard-earned money into someone else's smart contract, it's really nice to have the ability to= be able to go and review the source code of that smart contract, either yourse= lf or by hiring a developer to audit that smart contract, to make sure it's written fair, that there are no security vulnerabilities, and that it does = what it claims to do.
On the private blockchain side, what we have [is] permissioning.
And we can control how open or closed our data is.
We still have a lot of benefits of being able to share= data in shared infrastructure that private blockchain creates.
There are a lot of business networks and value chain relationships where the participants would love to be able to share more da= ta and more information with consumers about the business processes and the st= eps that go into delivering the goods and services we consume.
What has traditionally prevented solutions like this i= s the lack of any kind of shared infrastructure.
While technically conventional technology may be able = to address these concerns, it is oftentimes human beings not being able to com= e to consensus on questions of who owns the platform, who builds the platform, w= ho maintains the platform.
And, if a participant leaves the ecosystem, do they ta= ke all or part of the platform with them.
That have prevented us from using conventional technol= ogy in these respects.
Using private blockchain solutions like Hyperledger, c= an help alleviate many of these concerns and create a truly shared technical infrastructure between organizations.
This allows participants in a supply chain or value ch= ain to track data and to share that data about how goods and services are produced, created, consumed, and distributed into the open market, that we haven't re= ally been able to do practically before.
It's estimated that over 1/3 of the food we produce go= es to waste, because we don't have this kind of clarity into our supply chain with food or into the supply chain with other types of products.
Think about if a meat gets recalled because it might be contaminated, how much perfectly good meat gets thrown away just to err on = the side of caution.
Where if we just had greater resolution and visibility= into where that product originated from and how it went all the way from product= ion to our plate.
Then, we could issue more accurate recalls and reduce = the amount of food waste.
Consumers might value your product more, your offering= more, if they're able to see where it comes from.
If you're manufacturing and distributing clothing, and= you can demonstrate to consumers that all of that clothing was sourced from par= ts of the world with fair labor practices consumers are going to have more tru= st and faith in the brand and ultimately willing to pay a higher price for it.=
So, these kind of transparency solutions are one of the biggest benefits of blockchain and one of the areas being most explored, because right now there are a lot of consumers who would simply like more visibility into the products and services they purchase.
And blockchain, both public and private, can be a great solution for doing that.
Blockchain is
designed to be an authoritative ledger of the history of the network.
=
This history =
may
include financial transactions and business agreements where modifications =
to
the ledger may have wide-reaching business impacts. Blockchain is based on =
an
untrusted network, so trust that the blockchain has not been modified needs to a=
rise
from the structure of the blockchain itself, rather than from trust in the
organization storing a certain copy.
So, one of the big benefits of blockchain is what's kn= own as immutability.
The idea that once a record gets committed to the bloc= kchain or to the ledger, it's there permanently.
In blockchain, it's a little bit different than a data= base, and we'll talk about this in another module, in a lot more depth, but in a traditional database we're used to being able to edit records and delete records, and that's not the case in a blockchain.
In a blockchain, there are only two possible operation= s: we can create a new record, and we can go back and we can read existing record= s.
And this contributes to this idea of immutability - on= ce data is written to the blockchain it can't be edited, it can't be deleted.<= /p>
All you can do is add another record to the blockchain indicating that something about that data has changed.
This immutability is what makes blockchain such a secu= re solution, and it's what makes it a trustless solution.
Meaning, I don't have to trust anybody that I'm intera= cting with and trading with, as long as we both trust in the blockchain and the d= ata on the blockchain.
Then, we can transact back and forth seamlessly.
The way immutability works is blockchain is, by design= , a very, very inefficient solution.
We are asking a large number of nodes, all the nodes o= n a network, to perform exactly the same work as every other node.
Essentially, we are duplicating work over and over and= over again.
The reason we do this, is because the only way to potentially change data on a blockchain, is by changing the record on that blockchain for 51% or more of the nodes, or the miners, or the participants trying to come to consensus on the blockchain.
And when you get to very, very large-scale networks, Ethereum with its 16,000 plus nodes, Bitcoin with over 30,000 nodes, this becomes a very, very, very tall order.
Trying to hack or change a record on over 15,000 of th= ose Bitcoin nodes would be quite a bit of work.
So, it's not impossible to change the record on a blockchain, but it is impossible from a practical standpoint.
Now, one thing that should be noted when we talk about immutability is: all that blockchain gives us is an accurate recording of w= hat was posted.
It is still up to whoever is posting that information = on the blockchain to make sure it's accurate and true.
In other words, blockchain doesn't do anything to vali= date that the information on it is correct.
All it validates is that that information hasn't been changed since it was originally written.
Another way to think about that is, I could post a rec= ord on blockchain that says: "The sky is orange".
That doesn't make the sky orange.
We all know the sky is blue. All that does is that mea= ns I can't ever come back later and claim I didn't say that or I said it was blu= e, and someone changed the record.
That immutability that blockchain gives us is that tha= t data was captured as it was originally written and hasn't been changed.
Another part of this immutability is cryptographic has= hing, and the way that we chain all these blocks together.
If you haven't watched the module on Proof of Work, I = would suggest you go watch that now, to see a really in-depth overview, a hands-on demo of how blocks are actually linked together in such a way.
And, if I ever went back and tried to change any infor= mation or prior transaction on the blockchain, I would break that chaining in a ve= ry obvious way that anyone would immediately spot if they came and querried th= at data off the blockchain.
When you hear about immutability, just understand that= all we're talking about is the virtual impossibility of anyone ever being able = to come along and change any data on the blockchain.
And also, along with that, understand that we only hav= e two possible operations on blockchain: we can only read data and we can only add new data.
There's no concept of an edit or delete, and this is w= hat we talk about when we talk about immutability on the blockchain.
The blockchain
needs to be immutable. If someone c=
an
change the blockchain after the fact, then it is no longer a trusted histor=
ical
ledger. The blockchain is designed so that immutability is cumulative; each
piece is linked to every other piece, creating a cohesive whole that is more
difficult for an
attacker to modify.
·&nb=
sp;
At the bottom
level, transactions a=
re
digitally signed by their creators. An attacker can’t forge a transaction
unless they steal a private key.
·&nb=
sp;
A block struc=
ture
is predefined. Attackers can’t modify it to suit their purposes.
·&nb=
sp;
The chain par=
t of
the blockchain is achieved using hash functions. Each block includes the ha=
sh
of the previous block, creating a clear link between each block in the
blockchain.
·&nb=
sp;
Each block is
digitally signed by its
creator. The creator is selected through the blockchain’s consensus protoco=
l,
making it difficult for an attacker to be a legitimate creator.
All four of t=
hese
features help to make the blockchain resistant against changes occurring af=
ter
the fact.
Each transact=
ion
cannot be forged or modified because it is mathematically infeasible to for=
ge a
digital signature. =
The
structure of blocks is publicly defined, and invalid blocks will be publicly
rejected.
Each block “l=
ocks
in” the value of previous blocks by including their hash. Attackers cannot =
find
another block that will produce the same hash.
A block canno=
t be
forged or modified, because it is digitally signed by the
creator. The creator of a block is either publicly known (Proof of Stake) or
difficult to become (Proof of Work), making masquerading as the real creator
difficult or impossible.
Now, let’s ta=
ke a
moment to discuss how each of the features mentioned contribute to the
immutability of the blockchain.=
At the bottom
level, each transaction is digitally signed.
This means two things about transactions:
·&nb=
sp;
Existing
transactions can’t be changed after the fact, because the signature will no
longer match.
·&nb=
sp;
Fake transact=
ions
can’t be created since an attacker can’t create a valid digital signature f=
or a
transaction between other parties.
Both of these
contribute to the immutability of the blockchain since they limit the range=
of
transactions that an attacker has to work wi=
th
if he wants to create a fake but valid blockchain.
Next, the blo=
ck
structure is publicly defined in the protocol. This limits the types of
modifications that an attacker can make to a block when trying to modify the
blockchain.
Third, each b=
lock
contains the hash of the previous block. This is what ties the blocks of the
chain together. Remember from earl=
ier
that one of the properties of a hash function is that it is extremely diffi=
cult
to find two inputs to a hash function that create the same output. Since a
block contains the hash of the previous block, it’s difficult to find a
different version of the
ledger’s history that matches the most recent block, as that would require
finding two different versions of the previous block that have the same has=
h.
Finally, each
block is digitally signed by its creator. Since the creator of a block is
selected via a consensus algorithm, it’s difficult for an attacker =
to
become the legitimate creator of a given block. If an attacker is not the
legitimate creator of a block, it’s impossible for them to create a digital
signature that others would accept.
Now, let’s look at how different blockchains implement
immutability.
In Ethereum and Hyperledger, the immutability mechanis= m is the one that we’ve described previously. Each transaction and block is digitally signed and are linked using cryptographic hashes.
<= span style=3D'font-size:13.5pt;font-family:"inherit",serif;color:#00688D'>Corda<= /span>, a multi-party application development platform, relies on its notary service for immutability. Each Corda network has one or more notary services that verify transactions. Each transaction is considered separately and, if approved, is signed by the notary service. Transactions signed by a notary = are finalized and cannot be modified after the fact.
It is important to understand the value of locking in =
the
previous block by including its hash in the next block. As explained in the
article “A Gentle Introduction to Immutability of Blockchains” by
Antony Lewis,
· Creating a ledger of transactions with blocks that refer to previous blocks is a much better idea than numbering the bloc= ks sequentially.
· In a book with pages, 1, 2, 3, etc., it woul= d be easy to tear out page 25 and replace it with another page.
· The integrity of the book has been manipulat= ed and altered. However, there is nothing about the new page number that ties = it (chains it) to the content of the previous page.
· Instead, in a blockchain, blocks are referen= ced by their hash and each block explicitly specifies which block (hash) it is building on.
We will cover the Pro= of of Work in a later module. However, this demo uses the Proof of Work to show h= ow blocks are chained together and how tampering with information in a past bl= ock destroys the integrity of the proceeding blocks.
In this video, we're going to talk about Proof of Work consensus, and how Proof of Work consensus is used to create an immutable c= hain of block data on the blockchain.
Let's take a small example. Let's say we have some blo= ck data and, in the interest of simplicity, we will keep this very, very short= .
But understand that in real life a block will most lik= ely contain many more than just three transactions.
But on this block, we have a full block consisting of = three transactions.
When it's time to validate a full block, all nodes on = the network will start to guess a nonce value.
What we're looking for is a nonce value such that when= we take our input transaction data and we combine it with a nonce value, we ge= t a hash output that matches the difficulty.
In this case, the difficulty is a hash output that beg= ins with four leading zeros.
Every node on the network will guess a different nonce randomly until they happen to find one that matches the difficulty.
So, our node may start off by guessing "123"= , and we see that that does not produce a hash output that matches the difficulty= of four leading zeros.
Let's try again. Let's try "973321". Once ag= ain, that does not give us a hash output that matches the desired difficulty.
[So], rather than guess over and over and over, let's = go ahead and ask a computer to do our work for us.
The computer is now guessing different nonce values ra= ndomly until it happens to guess "22294", which you see produces a hash = that begins with four leading zeros.
Because this hash is the output of input to a hash fun= ction consisting not only of the transaction data, but also of the nonce, changing either one will result in a new hash output which does not match the difficulty.
If I change "22294" to "22295", yo= u'll see I get a hash output which no longer meets the difficulty criteria.
However, if I change any of my transaction data, I'm a= lso altering the input to the hash function, and thus generating an output whic= h is completely different from the desired outcome.
In this way, nodes or miners on a network can validate= they have the same transaction data.
If we all start randomly guessing nonce values for thi= s set of data and my node guesses "22294" first, all it has to do is si= mply share this nonce value with every other node on the network.
Each node can then try this value "22294" on= their copy of the transaction data.
If any of the data has been altered or changed in any = way, no matter how insignificant, or the node in question simply did not record = the data correctly, this nonce value will not work for them.
For example, if we change "4.2 bitcoin" to "4.9 bitcoin", you'll see that the proposed nonce does not work.<= /p>
In this way, all nodes can come to consensus or agreem= ent on what the right set of transaction data should be.
When a node thinks it's guessed the right nonce, it si= mply shares that value with the rest of the network.
If the majority of the network, 51% or more, agree wit= h this nonce, because they have the same transaction data on their copy of the blo= ck, then the miner who guessed this number first, will be rewarded and the netw= ork will come to consensus or agree that this is the correct version of the blo= ck data.
Any nodes which have different data for the current bl= ock will then discard the copy of the current block they have and replace it wi= th a copy that the rest of the network has agreed upon.
This method is used to create blocks of data chained together.
Let's say, that we have some transaction data here on = the blockchain.
We're gonna go ahead and mine our first block.
Now, you'll notice what we've added in this demo is th= e hash of the previous block, which is something we store in the header of every b= lock on the blockchain.
Because this is the first block, I simply get a previo= us hash value of zero.
Combining zero with the current transaction data on the block and the proposed nonce gives me a hash that meets the output difficul= ty.
When it's time to validate the second block, the proce= ss repeats itself.
I simply take the hash of the previous block stored in= the header of the current block, combine it with the transaction data in the current block, and try to guess the correct nonce.
In this case, it's "12314"
As discussed in our video on cryptographic hashing, ch= anging any of the input data, no matter how slight, will result in an entirely different hash.
If I try and change "2.3" to "2.9"= , I no longer get an output which matches the current difficulty.
This new output is also reflected in the header of the= next subsequent block.
If I have a series of blocks that have all been mined = and linked together, then you can see that going and changing data on any block will break every subsequent block after it.
So, if I try to alter this record "David pays Cha= rlie 2.3 bitcoin" and I want to change it to "5.3 bitcoin", I cha= nge the hash output of the current block.
This is reflected in the current block and also in the= next block.
Now, the nonce proposed for the next block does not wo= rk when combined with that block's transaction data and with the hash of the previous block.
This means that if I want to alter data on the blockch= ain, not only do I need to remind the block that I changed the data on, I also n= eed to remind every subsequent block in the blockchain.
This is no trivial task when you consider that major blockchain such as Bitcoin and Ethereum contain millions of blocks.
And this process must be repeated on tens of thousands= of nodes worldwide in a very short amount of time.
This ability to link together blocks in an immutable f= ashion and to cause attackers to have to undertake so much work, repeated so many times is what gives blockchain its security and immutability.
I hope you've learned a little bit more about Proof of= Work consensus and how blocks on the blockchain are linked together through watc= hing this video.
Next, let's engage with an interactive lab. This lab w=
ill
give you the chance to examine blocks on the blockchain. Enjoy!
In this chapt=
er,
we discussed:
·&nb=
sp;
Distributed
ledger technology (DLT) and how it differs from previous ledger storage
techniques.
·&nb=
sp;
Cryptography =
and
how it is used in several different ways in blockchain.
·&nb=
sp;
Hashing
functions, zero-knowledge proofs (ZKPs) and Merkle tree data structures and=
how
they are used to secure the
blockchain.
·&nb=
sp;
Public-key
cryptography and public/private k=
ey
pairs to support privacy, authenticity and security.
·&nb=
sp;
Ledger
immutability and transparency result from combining these technologies for =
an
agreed-upon, append-only distributed ledger system chained together by bloc=
ks.
In this chapt=
er,
we will examine some blockchain functions. First, we will discuss smart
contracts, how blockchains have the ability to store and run computer code
(applications) that can execute the terms of an agreement. These digital promises
stored and executed on the blockchains remove intermediaries and ambiguity
thereby reducing conflict.
We will discu=
ss
how blockchains secure their information and how these techniques differ fr=
om
traditional database security. Next, we will discuss different types of
blockchains (public, private and hybrid
models) and design considerations that need to be made before blockchains c=
an
be developed. We will examine the steps in a basic blockchain transaction f=
rom
start to finish.
Finally, we w=
ill
discuss blockchain consensus models and why they are the backbone to the
blockchain operations. We will compare Proof of Stake and Proof of Work models
and be able to discuss the differences and environmental considerations. Al=
so,
we will discuss private blockchain structures and how permissioning mechani=
sms
are the basis for their ConsenSys models.
By the end of
this chapter, you should be able to:
·&nb=
sp;
Explain what
smart contracts are and how they work.
·&nb=
sp;
Discuss the
benefits of using smart contracts.
·&nb=
sp;
Compare
blockchain security vs. standard security.
·&nb=
sp;
Indicate the
differences between private and public blockchains.
·&nb=
sp;
Understand wh=
en
to use a public vs. a private blockchain.
·&nb=
sp;
Analyze the f=
low
of a transaction in blockchain.
·&nb=
sp;
Discuss conse=
nsus
mechanism used in blockchain.
·&nb=
sp;
Explore diffe=
rent
methods of achieving consensus (Proof of Work, Proof of Stake, etc.).
When we make a transaction on the blockchain, understa= nd that there are only three types of transactions we can make.
It's what I refer to as the onion model of blockchain.=
And we're gonna start off with a very outer layer of t= hat onion.
The thing that most people are familiar with when they= get into blockchain.
The thing we do all the time when we trade cryptocurre= ncy back and forth.
That is two or more parties coming together and using = the blockchain to record an announcement of the exchange of monetary value.
So, we might use blockchain to record the fact that I = paid you three Bitcoin for your used car or I paid you twelve blockchain for your vacation home.
This is the model that many of us start off with in blockchain and again, it's the one that's most familiar and gets talked abo= ut the most right now.
But if we peel away that outer layer, and we take away= the idea of a monetary transaction or exchange, well, then we're left with two = or more parties using blockchain to record an important announcement.
And we see many valid use cases around this. Let's say= , that I go to the doctor for my annual physical.
My doctor checks me out and he says: "Hey Kris, I= want to put you on a new prescription for XYZ".
Well, maybe we're keeping our medical information on t= he blockchain, and so my doctor and I both agree that's a pretty good thing to= add to my medical record.
In this case, we still need two or more parties, becau= se it's very important that I, as a patient, don't have the ability to go and update my own medical record without a licensed medical professional involv= ed.
And it's also equally important that my doctor is not = able to update my medical record without my consent or permission.
And so, that's two or more parties coming together, recording an important announcement or important data point, but nowhere in that example has money or anything of monetary value exchanged hands.
Now, if we peel away the very last layer, you can take= away this idea of having to have two or more parties.
And what we're left with is just a single party announ= cing an important or significant event.
And this is the simplest type of blockchain transactio= n, and also the most powerful.
If we think about blockchain, perhaps for managing a s= upply chain scenario, we might have a grower of organic produce announce or commi= t a record to the blockchain that says they've planted a crop.
And we might have an organic pesticide company come and treat that organic produce.
We still have a single organization or single entity m= aking the announcement of something they did, and this is really the heart of blockchain.
When you understand that it becomes really easy to understand where smart contracts fit in.
And smart contracts are just computer code. They're co= dified logic that we can use to respond to any kind of event that gets captured on= the blockchain.
In that organic produce example, if I want to notify s= omeone when that fresh produce has been treated with organic pesticide, so I can create traceability for the end consumer, well, I might have a smart contra= ct that manages that that defines the rules and the steps that get taken when = that particular type of event occurs.
And this is all smart contracts are.
There's oftentimes a misconception when people hear th= e word contract that they think of a legally binding agreement between two or more parties.
It's not necessarily the case. Smart contracts don't h= ave to be legally binding and they don't have to involve multiple parties.
In fact, if you come from a programming or development background you can think of a smart contract easily enough as a "class".
If you're not a programmer or don't come from a develo= ping background, you can just think of a smart contract as a set of rules that g= et executed every time a certain type of event happens.
And this is where the real power of blockchain comes i= n that not only do we have a permanent, unchangeable record of all the different events that have occurred, we can also write computer code, very, very non-subjective computer code, that defines exactly how that process is goin= g to be managed and what steps are going to be taken when that event occurs.
This allows us to ensure process consistency.
It allows us to ensure that processes that are normally fulfilled by intermediaries or middlemen can now be satisfied on their own without the need for human intervention.
And this leads to much more lean and efficient organiz= ations in way of organizing human effort.
So, when you hear smart contract just think about comp= uter code that you write to respond to certain types of significant events.
If you've ever worked with workflow or business process automation or management tools, you can think of smart contract is just bei= ng another workflow tool, albeit one that has the power to work with money.
So, don't get too intimidated when you hear smart cont= racts, and don't get too caught up in the language.
While they sometimes may be legally binding, they're n= ot necessarily legally binding in the same way a true contract is.
They're just a way for us to bake our own logic into b= lock chain solutions to ensure that consistency of execution.
Let’s review =
some
basic information about
smart contracts:
·&nb=
sp;
They are comp=
uter
programs that
execute an action based on terms and conditions.
·&nb=
sp;
Can also be k=
nown
as chain code.
·&nb=
sp;
Smart contracts have ter=
ms
recorded in a computer language instead of legal language. Smart contracts =
are
not necessarily legally binding and do not need multiple participants.
·&nb=
sp;
Each step of a
smart contract can only be implemented after the execution of the immediate
former step.
·&nb=
sp;
Smart contrac=
ts
are written in Solidity, a programming language designed for developing sm<=
span
style=3D'mso-style-textoutline-type:none;mso-style-textoutline-outlinestyle=
-dpiwidth:
0pt;mso-style-textoutline-outlinestyle-linecap:round;mso-style-textoutline-=
outlinestyle-join:
bevel;mso-style-textoutline-outlinestyle-pctmiterlimit:0%;mso-style-textout=
line-outlinestyle-dash:
solid;mso-style-textoutline-outlinestyle-align:center;mso-style-textoutline=
-outlinestyle-compound:
simple;mso-effects-shadow-color:black;mso-effects-shadow-alpha:100.0%;
mso-effects-shadow-dpiradius:0pt;mso-effects-shadow-dpidistance:0pt;mso-eff=
ects-shadow-angledirection:
0;mso-effects-shadow-align:none;mso-effects-shadow-pctsx:0%;mso-effects-sha=
dow-pctsy:
0%;mso-effects-shadow-anglekx:0;mso-effects-shadow-angleky:0'>art contracts
that run on the Ethereum Virtual Machine.
·&nb=
sp;
The smart
contracts act as a foundation to build decentralized applications (DApps).<=
/span>
·&nb=
sp;
Once executed,
the information in the smart contract is stored on a blockchain which canno=
t be
altered.
These are som=
e of
the features that smart contracts provide:
·&nb=
sp;
Accuracy
Replacing hum=
an
intermediaries with executable code ensures the process will always be
performed the same.
·&nb=
sp;
Cost savings<=
br>
Replacing
intermediaries often provides significant cost reduction.
·&nb=
sp;
Efficiency
Removing proc=
ess
intermediaries often results in significant process efficiency gains.
·&nb=
sp;
Backup
A blockchain =
and
smart contract deployed to it can provide a permanent record, allowing for
auditing, insight, and
traceability, even if the creator is no longer in business.=
span>
·&nb=
sp;
Autonomy
Smart contrac=
ts
can be developed by anyone, no need for intermediaries such as lawyers,
brokers, or auditors.
One area getting a lot of attention in blockchain righ= t now, is campaign finance and campaign donations.
There are some really interesting and compelling use c= ases, ways that we might be able to use blockchain to do new and innovative things around campaign finance that just aren't practical or feasible today.
Let's say that I'm running for office and you want to support my campaign.
Well, today, you might write me a thousand dollar chec= k and I get all 1,000 of those dollars right away to use for my campaign.
Maybe, we want to use blockchain to empower voters to = keep their politicians more accountable to the promises they make on the campaign trail.
Consider the following scenario.
Let's say, that instead of donating a thousand dollars= to my campaign, you write a smart contract on the blockchain to manage campaign donations.
You give that smart contract a thousand dollars instea= d.
That smart contract has been programmed with the terms= and conditions under which it is able to release those funds to my campaign.
I might get two hundred and fifty dollars of that thou= sand initially to use for my election.
If I get elected, the remaining $750 can stay in the s= mart contract.
Otherwise, it gets refunded to you.
Let's say, I do get elected. Perhaps, I don't get the = second 250 of that thousand dollars until a year in office, if I fulfilled three or more of my campaign trail promises.
And then, we might say as a final step, I get the rema= ining five hundred dollars to use for my reelection, only if I fulfilled 80% or m= ore of my campaign promises during my first four-year term in office.
This would put a lot of power back in the hands of vot= ers and would keep politicians accountable for the promises they make, long aft= er election day.
While things like this certainly are possible with conventional technology, they're not very practical or feasible.
Blockchain and smart contracts puts this power back in= the hand of voters and has the potential to radically reform campaign finance a= nd campaign donations.
Blockchain is
commonly called the future of computing. It takes a very different approach=
to
data storage and processing and requires a very different perspective fo
In this secti=
on,
we will discuss some of the ways that
security differs in traditional and blockchain environments.<=
/span>
In this section, we're gonna talk a bit about how trad= itional cybersecurity is different than security concerns on the blockchain.
In traditional cybersecurity that we're all used to, w= e're very perimeter-focused meaning that we put trusted data and assets behind a very, very strict perimeter.
We assume that anybody we let inside that perimeter is trusted, either partially or fully, to see that data and access those resources.
And the brunt of our focus goes into making sure that = we keep the right people from getting beyond that perimeter, that we only let authorized users through, and then we prevent any attackers or strangers fr= om breaching that perimeter and accessing the data and resources we store behi= nd it.
This is very different from blockchain, which runs on a massively decentralized peer-to-peer global network.
Just by its very definition, you can see that there is= no perimeter on blockchain, and so our security has to come from somewhere els= e.
Our security on blockchain comes from the incredible a= mount of repetition.
The fact that we ask every node to keep the same copy = of the ledger and periodically to reach consensus, majority consensus, on what the proper data in that ledger should be.
This makes the amount of work that an attacker would h= ave to do practically impossible, if they wanted to change, hack, or alter the led= ger.
Another big difference between traditional cybersecuri= ty and security on the blockchain is with conventional applications and convention= al technology.
We either develop all our own code or application para= meters in-house or we rely on a single, third-party trusted provider who creates t= hat line of business system for us.
All the code, generally, comes from one place, and if = we don't write it ourselves, all we have to have is trust and faith in the third-party organization providing it to us.
In blockchain, things are a little bit different, beca= use oftentimes in blockchain solutions we're writing smart contracts which call code from other smart contracts, which we may or may not write ourselves.= p>
And which may come from a variety of different authors= .
So, whereas in the traditional cybersecurity space, we really only need to rely on our own due diligence to write secure code or t= he due diligence of a third-party application provider.
In blockchain, we have to expend a lot more time and e= nergy, making sure that the code and the contracts we're calling is safe and secur= e.
In other words, we want to make sure that we're not inheriting any security vulnerabilities from other smart contracts that have been written by unknown and potentially untrusted parties.
And the final big difference between conventional cybersecurity and blockchain is that in conventional line of business syste= ms all of our applications either run directly on trusted hardware that we own= as an organization or run on hardware with a high degree of trust provided by a third-party such as Microsoft Azure or Amazon Web Services.
In the blockchain world, all of our code runs on untru= sted resources, untrusted hardware that can be owned by anyone, anywhere in the = world.
This means that we must ensure that all the trust in a blockchain solution comes from the protocol and the code layer itself, beca= use it's a much more massively distributed network, and we don't have direct control or access into the hardware that supports it.
So, there are a lot of differences between conventional cybersecurity and security in the blockchain space that you're going to wan= t to understand before you deploy your own blockchain solutions.
One of the
primary differences between cybersecurity in a traditional computing
environment and on the blockchain is the environment itself and what it is =
and
isn't designed to do.
Standard Cyber
Security
·&nb=
sp;
The tradition=
al
computing environment is a company network fully or, at least mostly, under=
the
control of the company's computer security staff.
·&nb=
sp;
While many
organizations are making the shift to cloud-based environments, they still =
have
a high degree of control over the security and
configuration of their rented systems.
·&nb=
sp;
Traditional
networks are highly centralized, and the focus of cybersecurity on these
systems is primarily perimeter-focused. All systems and authorized users on=
the
network are trusted or semi-trusted, so the focus is on preventing attackers
from entering from outside =
the
network.
Blockchain Cy=
ber
Security
·&nb=
sp;
Blockchains a=
re
designed to be decentralized, distributed systems running on untrusted
hardware.
·&nb=
sp;
While securit=
y in
traditional environments is designed to provide security by putting all dat=
a in
one place and building w=
alls
around it, security in blockchain is based on ensuring that data is protect=
ed
from modification by copying data to as many locations as possible to make
modification of all copies infeasible.
·&nb=
sp;
Traditional
infrastructure focuses on confidentiality and integrity, while blockchain is
designed to provide
integrity and availability.
Both traditio=
nal
computing environments and blockchain have security considerations associat=
ed
with them. In many cases, the same attack is possible agai=
nst
both paradigms, but the details of how to implement it vary.<=
/span>
Next, we will
discuss how a few different attacks can be launched against traditional
computing environments and blockchain.
A denial-of-service (D=
oS)
attack is when an attacker makes it impossible for a system to serve its us=
ers
as designed. This can be accomplished by exploiting a flaw in the system, b=
ut,
more commonly, is accomplished by performing legitimate actions at a rate h=
igher
than the targ=
et
can handle. To be effective, denial-of-service attacks typically focus on a
system’s weakest link or bottleneck.
·&nb=
sp;
In traditional
environments, denial-of-service attacks target a company's web server to
prevent customers from accessing the company's services. This can be
accomplished by making more connect=
ion
requests than the server is capable of supporting.
·&nb=
sp;
In blockchain=
, a
denial-of-service attack involves submitting more transactions to the
blockchain than it can handle. Since many blockchains have fixed-size blocks
created at a fixed rate and are stored in a distributed fashion, they have =
a maximum capa=
city
that a determined attacker can exceed, rendering the blockchain unusable.=
span>
Traditional
infrastructure and blockchain environments also differ with regard to endpo=
int
security. Endpoint security originated to ensure multi-layer prevention aga=
inst
malware, fraud, cyber threats, and attempts to extract private information.=
·&nb=
sp;
In traditional
cyber, endpoints are under the control of the enterprise and have some leve=
l of
heterogeneity. Heterogeneity can be dangerous because=
an
attacker has more options for finding a vulnerability to exploit.
·&nb=
sp;
In blockchain,
endpoints are the nodes and may be completely homogeneous. While homogeneity
means that a flaw in one system is a flaw in all of the systems, blockchains
built in trust and data privacy feature guard against such attacks.=
span>
Computer
applications are dependent on reliable code. Another way that traditional a=
nd
blockchain cybersecurity differ is in the level of trust in the code used in a
company's applications.
·&nb=
sp;
In traditiona=
l cyber, the
company writes most of the code, and vulnerabilities can arise only from co=
de
that the company controls.
·&nb=
sp;
In blockchain,
anyone can write a smart contract, and a flaw in the smart contract or the
underlying platform code can have wide-reaching consequences. But since sma=
rt
contracts can be vetted and reused,
such inconsistency can be edited from the code. We will discuss an example =
of a
vulnerability in a platform's code in a later section covering the Ethereum
network.
Both traditio=
nal
and blockchain environments are vulnerable to attacks based on intentional
misuse of the system.
·&nb=
sp;
In traditional
cyber, insider attacks or intentional misuse of the system by clients are
possible. In fact, a denial-of-service attack is a specific type of intenti=
onal
misuse.
·&nb=
sp;
Blockchain
systems are set up to incentivize network participants,
miners or nodes, to do something that is in their best interest. A weakness=
is,
if more than half of the network's processing power is controlled by a sing=
le
group, the network is controlled by that group.
Finally,
traditional infrastructure and blockchain differ in their goals regarding d=
ata
protection.
·&nb=
sp;
In traditional
cyber, data is siloed, and access is strictly controlled by the owners, pla=
cing
responsibility for confidentiality, integrity, and availability in their
hands.
·&nb=
sp;
In blockchain,
data is distributed, and the blockchain is relied upon to provide integrity=
and
availability.
Next, let's engage with an interactive lab. In this la=
b, you
will be examining a blockchain containing five blocks, each labeled accordi=
ng
to position. Enjoy!
When we try to
understand the main difference between a public and private blockchain, it =
is
important to understand the terminology.
·&nb=
sp;
Public
Blockchains
A public
blockchain is open to anyone to join. Public blockchains are decentralized
where no one has control over the networ=
k.
These immutable and censorship resistant networks are ideal for participants
who don't trust each other, but still interact in a network and take part in
consensus. Bitcoin and Ethereum are examples of public, permissionless
blockchains.
·&nb=
sp;
Permissionless
Blockchains
Public
blockchains are permissionless.
Anyone effectively can join the blockchain network. No one is prohibited fr=
om
joining.
·&nb=
sp;
Private
Blockchains
Private
blockchains define a user's rights on the network prior to admittance.
Restrictions are placed on activities such as who can write to the ledger a=
nd
what transaction they can participate in.
Hyperledger and Corda blockchains are examples of private permissioned
blockchains.
·&nb=
sp;
Permissioned
Blockchains
In a permissi=
oned
blockchain, participation is permissioned by an organization or a consortiu=
m of
organizations. This empowered entity defines who can participate in certain
transactions and consensus on
the network.
When people get into blockchain, there's a natural discussion about what type of blockchain, because blockchain comes in many different types and flavors.
And normally, we hear about public versus private blockchains.
One factor that often gets left out is also the idea o= f an open versus closed blockchain.
And it's important to consider both parameters, so you= know where on a possible solutions quadrant your idea falls.
When we talk about public and private, what we're real= ly talking about is who is able to write data onto that blockchain or onto that immutable ledger.
The open versus closed brings in to consideration who'= s able to read that data.
And so, we can talk about solutions which are public a= nd open, public and closed, private and open, private and closed.
When we talk about public blockchains, what most folks= are really talking about is a public open blockchain.
It's a blockchain where anybody can come write data to= the blockchain, anybody else can come read that data.
So, public blockchain platforms like Bitcoin, Ethereum, Litecoin tend to get talked about a lot right now,
and these are what we also refer to as permissionless blockchain platforms meaning that they really strive to, by design, increase and protect the user's anonymity.
And, if we don't know who a user is, if we don't have = a way of identifying individuals, and we don't have any way of creating permissio= n or access rules around that user,
and it's what we get, is the system where anybody can = commit data to that blockchain and anybody can come along and read data to that blockchain.
There's a perception that public blockchain platforms = like Ethereum can't be used to build permission scenarios or to control access to data.
The truth is they can, they just don't give you the bu= ilt-in tools that a private or permission blockchain platform will.
You can always use these open public platforms to buil= d a permission solution, but just understand that it's upon you, your architect= s, and your developers to create that permissioning model, and that all starts with some kind of identity management system.
When you think of public blockchains, you think about blockchain platforms like Ethereum, understand, by default, by the very nat= ure and design, they're designed to protect anonymity.
And, if we don't know who a user is, then we really ha= ve no way of creating permissions, role-based access and controlling what data th= ey can read or write.
In a lot of situations, this is desirable, this is why= we see cryptocurrencies based on public blockchain platforms, because having t= hat anonymity is important.
And, if a user has a currency, something of value, they should be able to exchange it and spend it, and do what they want with it, = just like anybody else.
We don't want to treat any class of users differently = than any others in those scenarios.
That's a public blockchain, and that's a very different animal from the private permission blockchain.
In the "Public vs. Private Blockchain In a Nutshell" article
by Demiro Massessi, public and private blockchains have different features.=
The
benefits of public blockchain are:
·
Ledger is distributed
The database is not centralized like in a client-server approach, and all n=
odes
in the blockchain participate in the transaction validation.
·
Immutable
When something is written to the blockchain, it cannot be changed.
·
Open Consensus Model
No restriction placed on who can operate a node in the network.
·
Open read and write
Anyone can participate by submitting transactions to the blockchain, such as
Ethereum or Bitcoin; transactions can be viewed on the blockchain explorer.=
·
Low barrier to entry
Transactions on a public network can be accomplished with an Internet
connection and a cell phone.
·
Secure due to mining (51% rule)
With Bitcoin, obtaining a majority of network power could potentially enable
massive double spending, and the ability to prevent transaction confirmatio=
ns,
among other potentially nefarious acts. This has never been accomplished as=
the
computing power needed to stage such an attack would be too costly.
The counterpart to a public blockchain is naturally a private blockchain.
These are platforms like Hyperledger or Hashgraph.
And private blockchains are more specifically known as permissioned blockchains.
When we talk about private blockchain or when you hear= folks talking about private blockchain solutions, they tend to be talking about t= hings on the private and closed end of the spectrum.
We want to control who can write data to this blockcha= in, and we want to control who can read data from this blockchain.
And in order to do that, the first step is identity.= p>
If we don't know who a user is, it becomes difficult, = if not impossible, to define rules about what data they can commit to the ledger a= nd what data they can consume from the ledger.
When we talk about private blockchain, just think about permission blockchain, the blockchain which right from the beginning is an = idea of who you are.
And this is very different from a public platform like Ethereum, in which the platform tries to protect and maximize anonymity.
And we, by design, don't know who a user is, unless we= build in that kind of identity management scheme.
Private blockchains tend to come with identity managem= ent tools or a modular architecture, where you can plug in your own identity management solution.
This can be anything from an Active Directory deployme= nt to an OAuth solution using Google, Facebook, LinkedIn, etc.
Just understand the idea behind the private blockchain= .
All begins with understanding who a user is, because o= nce we understand who a user is, we can determine what role they're in, and we can= use that role to determine what information should they and should they not have access to.
This also changes the incentive for good behavior a li= ttle bit in a public blockchain, because we don't know who a user is.
We rely on economics and game theory incentives to ens= ure that everybody in the system behaves honestly and according to the rules.= p>
We set up situations through group consensus, which we discuss in other sections in this course, through which honest participants= are economically rewarded, where dishonest ones only incur work or cost, with no possibility of ever recouping that cost.
In a private permission blockchain, we rely on the fac= t that we know who a user is.
In a corporate scenario, blockchain for the business, blockchain for supply value chains, because we know who an individual is, w= hat organization they're associated with and what their role is, we also assume that they're going to behave fairly aboveboard, because if not, we know exa= ctly who's misbehaving and they know that they're gonna suffer the consequences = for that.
Public and private blockchains, two very, very differe= nt offerings.
A lot of people make the impression, get the impressio= n that they compete with one another, when really they don't.
They just serve to provide different types of solution= s and enable different kinds of products and offerings to be built on top of them= .
The following benefits of a private blockchain have be=
en
described in the "Public vs. Private Blockchain In a Nutshell" article
by Demiro Massessi:
·
Ledger is distributed/immutable
The database is not centralized like in a client-server approach, and all n=
odes
in the blockchain participate in the transaction validation. When something=
is
written to the blockchain, it cannot be changed.
·
Compliance support
As an enterprise, you likely would have compliance requirements to adhere t=
o,
and having control of your infrastructure would enable this requirement more
seamlessly.
·
Faster transactions
When you distribute the nodes locally, but also have much less nodes to
participate in the ledger, the performance is faster.
·
Consensus more efficient/more options
More options for consensus models. Enterprise or private blockchains have l=
ess
nodes and usually have a different consensus algorithm, such as BFT vs. POW,
which we will discuss in a later section.
·
Better scalability
Being able to add nodes and services on demand can provide a great advantag=
e to
the enterprise.
·
Enterprise permissioned
The enterprise controls the resources and access to the blockchain, hence
private and/or permissioned.
As discussed in "The Difference Between Public and Private Blockchain&q=
uot; article
by Praveen Jayachandran, both public and private blockchains share many
similarities:
· Both are decentralized peer-to-peer networks, each maintaining a shared append-only ledger of digitally-signed transactio= ns.
· Both maintain transaction replicas in-sync through a protocol referred to as consensus.
· Both provide certain guarantees on the immutability of the ledger.
On the other hand, as described in Investopedia, the main difference between a public and private blockchain is related to who is allowed to participate in the network, execute the consensus protocol, and maintain the shared ledger:
· A public blockchain network is completely op= en and anyone can join and participate in the network.
· A private blockchain network requires an inv= itation, and must be validated by either the network starter or by a set of rules. Private blockchains are usually set up as permissioned networks, placing restrictions on who is allowed to participate in the network, and only in certain transactions.
Now that we've talked about public and private blockch= ains, what those terms mean and again, you can think of that as permission versus permissionless blockchains,
We can talk about some of the differences and what each different type of platform aims to provide.
Public blockchains are really good for scenarios where protecting the anonymity of users is important or adds value to the solution and they're really great platforms for solutions where all users should be treated equally and we can see this because most public blockchains right n= ow are used to support crypto currencies and this is a real great use case wit= h a crypto currency like Bitcoin, Litecoin, ether etc.
We don't want to have any permissioning or role based access.
Anybody should be able to own some Bitcoin.
Anybody should be able to trade it with anybody else a= nd it's not necessarily important that we know who the participants in any transaction are.
That leads to an open permissionless model with full transparency.
This is very different in the corporate world where we= see private blockchains being adopted at scale because the concerns are the opposite in a corporate scenario.
In a business scenario, anonymity is a bad thing.
I want to know exactly who all the participants are an= d I need to know who they are because I don't want full transparency.
I don't want to share all my business data with all the participants in my business network or the general public at large.
I want to control who sees what type of information, u= nder what circumstances and I also want to control who is able to contribute that information onto the blockchain.
I might use a private blockchain solution to manage su= pplier vendor relationships where only myself and my suppliers can see the price t= hat I'm paying for a certain item.
Only a particular supplier gets to see the details of = the contract that I have and not the details of a contract I have with any other suppliers and I may wish to share some of this high-level macro data with consumers so that they can see the origins of the products they're buying.<= /p>
But, of course, I'd want to hide the financials behind= all that so when we look at how these two solution types differ, we see the pub= lic blockchains tend to focus more on b2c or business to consumer scenarios.
Whereas private blockchain offerings like hash graph, = hyper ledger really lends themselves well to be to be scenarios supply chain value chain relationships or creating any kind of shared infrastructure between enterprises.
Just to understand that well there's a big misconcepti= on that these are competing offerings.
They're really not and many real-world use cases use components of both.
It's important to understand the difference between th= em and it really all starts with Identity Management.
When you're thinking in your head about public versus private blockchain.
To understand that it all begins with Identity Managem= ent and in a private blockchain I know who all the participants are right from = the beginning.
In the public blockchain, again, I don't know who those participants are and that's not to say that I can't build a permission solu= tion on a public platform.
But, myself, my architects, and my developers are gonn= a have to develop the logic and the mechanisms behind identity management so that's public and private blockchain, two very different animals, they serve vastly different purposes.
As you start to dig into a lot of real-world use cases= , what you're going to find is many use cases make use of both types of blockchain, integrated seamlessly to you.
Consider the
following aspects before deciding if blockchain is for you:
·&nb=
sp;
Blockchain
decisions
When it comes=
to
decision making around which blockchain model to use, it's important to
determine which platform and structure is right for your business.=
span>
·&nb=
sp;
Intermediarie=
s
Blockchain
implementations can eliminate middlemen from work processes.<=
/span>
·&nb=
sp;
Central autho=
rity
Some
organizations rely on one person having control, with blockchain decentrali=
zed
work flows without a single po=
int
of failure are emerging.
·&nb=
sp;
Multi-part
Blockchain
provides a trust layer that opens up new opportunities for participation.=
span>
·&nb=
sp;
Visibility
Blockchain
transparency reduces dispute over what is in the ledger since agreement occ=
urs
before transactions are committed and everyone can have access to the ledge=
r.
·&nb=
sp;
Write access<=
br>
Public
permissionless blockchains do not prohibit who can add blocks to the chain,
where private permissioned can restrict access.=
·&nb=
sp;
Value transfe=
r
Blockchains c=
an
differ in the ways participants transfer value.
Let's take a look at = the blockchain decision chart:
Discussion on these t= opics need to be addressed when making the decision to adopt a blockchain strategy for your company:
One important thing to keep in mind as you're evaluati= ng blockchain, is it's like hot sauce.
And I want to give credit where credit is due for this analogy.
This was inspired by a friend of mine, Samson Williams= , a thought leader in the blockchain space.
But Samson loves to talk about blockchain being a lot = like hot sauce.
Hot sauce is surprising because you can put it on a nu= mber of things and it really tastes good.
But there are some things hot sauce just doesn't belon= g on.
You'd never put hot sauce on an ice cream.
Understand that blockchain is like hot sauce - there a= re a lot of areas you can add a little splash of blockchain to, and end up makin= g a much better and more compelling solution.
But there are some areas that you can't add blockchain= to without making things a lot worse.
And just like hot sauce, there is a big misconception = that blockchain is an all-or-nothing proposition, that if we're going to archite= ct and develop a solution on blockchain, we either have to build something that exists entirely on blockchain, or we need to build something that exists entirely on conventional technology.
The truth is that like hot sauce, blockchain is really= best when it's combined with something.
If you were hungry and poured yourself a big bowl of h= ot sauce, not only would you be unsatisfied and unhappy, but you wouldn't want= to repeat the process again.
That's the same way with blockchain.
If you are looking at building a solution completely a= nd entirely on the blockchain, without exploring some of the amazing potential that you get by combining blockchain with conventional technology, then you probably got a bad recipe.
So, when you're thinking about blockchain, and how to = add it to your personal and professional life, understand that it's not a meal all= by itself.
It's just a little splash of hot sauce you put on some= thing that already works pretty well.
Companies must
consider many factors when deciding how blockchain will fit into the busine=
ss
model. There is not a “one size fits all” blockchain but rather a
well-thought-out approach that
considers many options.
·&nb=
sp;
Governance
Governance of
blockchains deals with a system for managing and implementing changes to
blockchains. Chapter 4, “Blockchains and Governance”, covers how blockchain=
is
managed and how changes are implemented.
·&nb=
sp;
Smart contract
functionality
Each organiza=
tion
has unique needs when deciding on smart contract functionality. Such
decisions as to the design, implementation and testing of these digital
promises need to be determined. Can smart contracts replace or accentuate
current work flows? Can a previously written smart contact fit in the curre=
nt
business model?
·&nb=
sp;
Consensus
algorithms
Consensus mod=
els
change depending on the type of
blockchain environment you are creating. In order for a blockchain to work,=
the
participants must come to an agreement as to the transactions in the ledger=
or
the state of the ledger. This agreement is called consensus. Public blockch=
ains
have miners that a=
re
incentivized to reach consensus whereas private blockchain set up enterprise
nodes that agree to the state of the ledger. We will discuss consensus mode=
ls
later in this chapter.
·&nb=
sp;
Integration
Consideration=
for
current work flows and how to bridge blockchain platforms with existing sys=
tems
are a vital
conversation. How can blockchain add value to your current organization whi=
le
leveraging your existing systems?
·&nb=
sp;
Cryptocurrency
requirements
As mentioned
previously, a cryptocurrency is a medium of exchange digitally enabled by
blockchain. Cryptocurrencies secure and keep track of assets on a public blockchain.
Enterprise blockchains generally do not use the cryptocurrency feature.
Decisions on if and how your blockchain will exchange value among participa=
nts
are important discussions that need to occur during the design phase.
·&nb=
sp;
Cost modeling=
New questions
arise around consortium type blockchains, one consideration =
is
how to split the technology cost among the participants in a fair and equit=
able
manner.
Overall,
blockchain decisions will be made by actors in the blockchain system:
·&nb=
sp;
System Archit=
ects
design and build blockchain networks. This includes decisions on node types=
and
membership rights.
·&nb=
sp;
System Develo=
pers
design the smart contracts for the community to use.
·&nb=
sp;
System Operat=
ors
interact with the software, permissioning and onboarding participants. This=
includes stor=
ing
the ledger, creating wallets and managing credentials.=
·&nb=
sp;
Blockchain Us=
ers
join a blockchain by setting up a wallet and/or receiving permission to eng=
age
in a particular function.
In this section, we'll discuss the blockchain transact= ion flow.
Regardless of the blockchain technology, the flow of d= ata through a blockchain will remain relatively the same, at least at a high level.
It will all start with a blockchain user performing an operation that should be stored on the chain.
The operation will trigger a smart contract, or it will trigger chaincode.
In either case, the code will be executed on the actual blockchain itself.
The output of this code will result in a transaction, = and that transaction is what we intend to be stored on the blockchain.
Next, the blockchain operators using protocols that wi= ll be specific to the specific blockchain that's running on will spread that transaction throughout the blockchain network.
The block creators will collect all of the transaction= s and it will create a new block.
In most blockchains, this is the job of the miner and = is the output of the mining process.
The block operators will spread the block through the = peer network to update the ledger copies once consensus has been achieved.
And this results in the block operators again executin= g code included in transactions within the block to update their own copy of the internal state of the blockchain.
The users will be notified of an event from a blockcha= in creation via an event.
Although bloc=
kchains can diff=
er
in form and function, all follow a basic transaction flow.
=
=
Step 1: Opera=
tion
Initiated
Let's follow =
the
step with a basic Bitcoin transaction. If Alicia wants to send Billy some
bitcoin, she would go to a Bitcoin wallet application
either on her phone or computer where she has some Bitcoin stored. Wallet
applications are usually free downloads that create a digital wallet to
purchase and/or store your cryptocurrency.
=
=
It is worth
mentioning here that cryptocurrencies are a function of a particular
blockchain, the Bitcoin blockchain only transacts bitcoin and the Ethereum
blockchain can only exchange Ether. To initiate the transaction, Alicia wou=
ld
make a request =
of
the system to send Bitcoin to Billy’s wallet by specifying the amount and
Billy’s Bitcoin address.
Step 2: Smart
Contract Triggered
When Alicia s=
ends
her transaction to the network, it triggers a smart contract that checks wi=
th
the nodes on the network to make sure Alicia has the currency to spend, and
that she hasn't already spent it. Once checked, the
transaction is added to a proposed block.
Step 3: Opera=
tors
Spread Transaction
Proposed bloc=
k is
communicated to the network through the
peer-to-peer protocols.
Step 4: Conse=
nsus
In order for =
the
Bitcoin network to validate a block, nodes or
miners must validate the correctness of a block by completing a math problem
first. The node that completes the Proof of Work equation first is rewarded
with some newly minted Bitcoin. Once a solution for the equation is reached,
the other nodes can easily
check its accuracy, thereby accepting the new block onto the blockchain.
Step 5: Spread
the New Block
This block is
spread throughout the network through the same peer-to-peer communications =
we
used for the transaction. When block operators receive a copy of the new bl=
ock,
they add it to their copy of the distributed ledger. This guarantees that all mem=
bers
of the peer network agree on the current state of the blockchain’s distribu=
ted
ledger.
Step 6:
Transaction Completed
The user’s wa=
llet
monitors for the creation of new blocks that include transactions associated
with the user. When a block containing the completed code from the user’s
operation is received, an event is created to notify the user that=
the
operation is complete. When the block containing Alicia’s Bitcoin transfer =
to
Billy is added to the blockchain, an alert will be sent to the affected wal=
lets
that the transaction was accepted and completed.
Consensus in blockcha=
in is
moving away from a centralized system where one entity keeps track of the
ledger towards a decentralized system where trust does not rest with one en=
tity
but all entities and what they decide together. The blockchain is a distrib=
uted
and decentralized system, which means that it needs to have a way of tracki=
ng
the official current state of the system. Since the blockchain can include
financial transactions and business agreements, it is important that all
parties involved are in sync regarding the terms of the agreement.
In this section, we w= ill discuss the details of how a blockchain network comes to agreement on the contents of the blockchain.
One of the most important components to blockchain is = this idea of group consensus.
As we talked about in an earlier module, blockchain is inherently a very inefficient system.
We're asking multiple nodes, sometimes tens of thousan= ds of computer nodes, to all repeat the same work: they're all keeping a copy of = the same data.
And the reason we agree to this tremendous inefficienc= y is because if we can get all or most of those nodes to agree on what the truth= is.
We can have a lot of trust that that's actually the tr= uth, that that record hasn't been tampered or altered or changed in any way.
Consensus is one of the underpinnings of blockchain.= p>
There are several different methods we use right now t= o have all these nodes reach consensus.
Essentially, when we talk about consensus, you can thi= nk of every block in a blockchain as being like a sheet of paper.
It's got a fixed amount of space. We write a transacti= on on every line, and when that sheet of paper is full, it's important that we al= l, as a group, come together and compare our different sheets and select the s= heet or the version of paper that the majority agree with.
And so, there are several different methods that we us= e to come to consensus on a block.
The oldest and most widespread method is what's called= Proof of Work.
And you'll see in another module, we actually dive into Proof of Work hands-on, and show you live what Proof of Work looks like and= how it actually works.
Proof of Work has served us well for the past nine, al= most ten years, got its start in Bitcoin, and it's used in every major public and most private blockchain offerings.
But we're also starting to see some of the limitations= of Proof of Work.
One of the big limitations behind Proof of Work right = now is how big and how fast it can scale.
Currently on Proof of Work blockchains, we're able to process somewhere between 50 and 20 transactions worldwide per second, which may sound like a lot until you realize that modern payment processing netwo= rks like Visa can scale up to over 70,000 transactions a second.
So, in order to compete with conventional technology, blockchain really needs to add a few more orders of magnitude to that transaction rate.
There are many proposed alternative consensus methods = for how we might be able to reach that kind of scale.
There are things in production right now like Tangle w= hich use a blockless solution, and they're also new and emerging consensus metho= ds like Proof of Stake, or Proof of Activity that we're currently examining to take the work out of Proof of Work.
We also have another module in this course where we ta= lk about Proof of Stake, and then another one where we compare Proof of Work versus Proof of Stake.
If you're curious about any of the details of how these consensus mechanisms are actually implemented, be sure to check out those modules.
But the takeaway point to understand is that, it's this consensus, it is this idea of asking all of these nodes, potentially tens of thousands of nodes, to all repeat the same work and then periodically come together and agree on whatever the majority select the right version of the truth to be.
That gives blockchain that high level of trust and that makes it such a secure record store.
As discussed in the "Blockchain Consensus and Fault Tolerance In a
Nutshell" article by Demiro Massessi,
&qu= ot;The blockchain is designed to be a shared, synchronized historical ledger, mean= ing that there needs to be a final decision at some point on what should and shouldn’t be included in the official record. Since blockchain is decentralized, there is no "higher authority" that can rubber-sta= mp and finalize the contents of a blockchain block.
The method that <= i>Satoshi Nakamoto, creator of the Bitcoin network, invented to achieve consen= sus is based on scarcity. In one way or another, blockchain consensus algorithms boil down to some kind of vote where the number of votes that a user has is tied to the amount of a limited resource that is under the user’s control. Based on the economic law of supply and demand, collecting enough of an ass= et to have a controlling share will drive up the price of the asset enough to = make achieving that level of control unfeasibly expensive".
In order to
ensure no one spent the same Bitcoin twice, Satoshi Nakamoto created the
consensus algorithm called Proof of =
Work
for the Bitcoin network. Since then, several other consensus algorithms have
been invented to fit different use cases. These include Proof of Stake,
Delegated Proof of Stake, Practical Byzantine Fault Tolerance, and Proof of
Elapsed Time. The most
commonly used consensus algorithms are Proof of Work and Proof of Stake.
As explained in the "Blockchain Consensus and Fault Tolerance In a
Nutshell" article by Demiro Massessi,
&qu= ot;In Proof of Work, users in the blockchain network who want to create the next block (and win the associated reward) are called miners. To win the right to mine a block, miners race to find an acceptable solution to a “hard” cryptographic problem. (...), “hard” mathematical problems can only be solv= ed by random guessing. When a miner finds an acceptable solution, they create a block and broadcast it to the network, finalizing that block.= p>
Pro= of of Work exploits the scarcity of computational resources by choosing a problem that can only be solved by guessing. There is no limit on the number of gue= sses that a miner can make at once. Proof of Work, therefore, incentivizes miner= s to run as many mining machines as possible to maximize the probability that th= ey are the first to find a solution to the problem. Since mining computers take money to purchase and money to run, the amount of control that a user can e= xert over the blockchain is limited by the amount of money they have available to invest in mining equipment".
Also, the process of mining requires computing power t= hat runs on electricity. Some argue the Bitcoin network is not sustainable beca= use of its increasing need for electricity. The argument against this assumes Bitcoin miners are out to make a profit and by using renewable energy sourc= es to power the mining operations they will be more profitable. As a result of seeking out carbon-friendly energy sources, mining companies will bring new renewable energy solutions to the power grids.
The security of the P= roof of Work consensus is based on the assumption that no one controls more than ha= lf of the computational resources of a blockchain’s mining network. If one ent= ity controls 51% of the mining effort, they control consensus. To take control would require a huge investment in equipment and energy, more than would be gained by defrauding the system.
Proof of Stake comes with a number of improvements to =
Proof
of Work systems, it requires less energy and has a lower barrier to entry s=
ince
no specialized hardware is required to create blocks.
In the same article that we mentioned on a previous page, the author explains,
&qu= ot;Users in a Proof of Stake blockchain can "stake" or promise not to use = the tokens they own. This gives them the opportunity to be selected as the next user to create or "forge" a new block and earn the reward. A block forger is pseudo-randomly selected from all of the users who have staked so= me of their assets, and the selection process is biased based on the size of t= he stake.
For example, imagine that a wheel is divided into sections where the size of a section is proportional to the size of a user’s stake. The next block creat= or would be chosen by spinning the wheel and seeing whose section comes out on top. In Proof of Stake, each user has a copy of the wheel and they are all synchronized so that each person can independently determine the selection = and get the same result. This is why Proof of Stake uses a pseudo-random instea= d of a random selection process".
In = Proof of Stake, an attacker needs to control enough of the staked currency to guarantee they will be selected to create every block. Since cryptocurrency= is a limited asset, buying up enough of it to do this is expensive, making att= acks on Proof of Stake systems economically infeasible.
In blockchain, it is essential all participants agree =
to the
state of the ledger. Shared decentralized ledgers arrive at network agreeme=
nt
or the state of the ledger by consensus algorithms. But what happens if all
participants in the network don’t agree? Let's discuss the concept of Fault
tolerance and why it is an important blockchain concept.
As described by Demiro Massessi<= /span>,
&qu= ot;Blockchain is a distributed, decentralized system that maintains a shared state. While consensus algorithms are designed to make it possible for the network to ag= ree on the state, there is the possibility that agreement does not occur. Fault tolerance is an important aspect of blockchain technology".
One of the things we've talked about extensively in th= is series is how inefficient and redundant blockchain is and that is by design= .
That's what gives us immutability.
And another thing it gives us is an extreme level of f= ault tolerance.
At its heart, blockchain runs on a peer-to-peer network architecture in which every node is considered equal to every other node.= p>
And unlike traditional client-server models, every nod= e acts as both a client and a server.
And so, we continue this redundancy down at the network level, where we're asking all these nodes to perform the same work as all t= hese other nodes.
Like any peer-to-peer system, we have an extremely high degree of fault tolerance.
In fact, if we have two or more nodes online in a bloc= kchain system, we still have a working blockchain.
And when you think about that amazing fact given the s= cale of major public blockchains, you can see the inbuilt fault tolerance.
Let's look at Bitcoin for an example.
That's a blockchain that consists of over 30 thousand = nodes coming to consensus on every block.
As long as we have two or more of those nodes online a= nd able to communicate, we still have a working solution.
That gives us a tremendous margin for error, for nodes coming and going offline, for network transport issues, and it makes blockc= hain really, really a great platform to use in environments with less than ideal networks and power infrastructure, because we can have nodes come offline, = go back online and when a node comes online after being offline for a while, a= ll it has to do is sync up, and get all the data that it missed while it's been offline from all of its peers, and then it's right back online participating like all the rest.
This is very different from the centralized systems th= at blockchain aims to replace.
In a traditional client-server model, if that server is offline, those clients have no way of getting the data that they requested = or performing the operations they'd like to perform.
This is not the case in blockchain.
And if we look back historically at other peer-to-peer solutions, solutions like Bittorrent or Napster, we've seen the tremendous difficulty that authorities have had taking some of these networks offline.=
That is due to the fault tolerance you get from a peer-to-peer architecture.
In fact, we saw this recently during the Arab Spring, = when the Egyptian government decided one night to shut down Internet access for = the entire country.
Well, within 24 hours Egypt was back online and connec= ted to the Internet through a network-sharing mechanism known as mesh networking, which at its heart is just a peer-to-peer method for sharing Internet connectivity.
We know that peer-to-peer has a long history of provid= ing extremely high fault tolerance and reliability, and that's why we've chosen= to build a platform like blockchain on top of it.
If you're looking for a solution platform that offers = you that kind of incredible fault tolerance, if you're looking to deploy a solu= tion into areas with less than ideal infrastructure or under conditions where no= des may come online and go offline frequently, then blockchain may be a really = good platform to look at.
The Byzantine Generals' Problem has been thorough=
ly
explained in the Medium article by Demiro Massessi,
&qu= ot;The Byzantine Generals' Problem is a scenario designed to demonstrate the difficulty of multiple parties coming to an agreement when communication can only be accomplished on a one-to-one basis and is untrusted. In the story, several Byzantine Generals are besieging a city with their separate armies.= If they all attack together or all retreat together, they will be ok, but if s= ome attack while others retreat, they will be destroyed.
The generals can only communicate by messengers, who could be intercepted and forced to carry fake messages, and one or more generals may be a traitor. T= he goal is to find a way to achieve a consensus on strategy despite the possibility of traitors and false messages. Presumably, all generals will a= bide by what they believe is the majority consensus. The Byzantine Generals' Pro= blem is solvable as long as two-thirds of the generals are honest.= p>
Blo= ckchain is designed to be Byzantine Fault Tolerant, meaning that the network will c= ome to a consensus on the official state of the blockchain, despite the fact th= at some members may misbehave. The solution to the Byzantine Generals' Problem= is inefficient, so the blockchain needs some way of being confident of consens= us without going through a full solution".
We've talked a lot in this course about Proof of Work = versus Proof of Stake.
Proof of Work is the oldest and the original consensus protocol. It's coming up on its tenth anniversary; first one into production with Bitcoin back in 2009.
And as a consensus protocol, it served us very, very w= ell.
There have been a number of hacks and exploits that ha= ve been committed against various smart contracts and solutions written on top= of the blockchain.
But for almost a 10-year history with over half a tril= lion dollar market cap, no one's been able to successfully exploit Proof of Work itself, which really shows the security and the reliability of the protocol= .
However, there are some shortcomings and criticisms to= Proof of Work that are now leading us to look at alternative consensus mechanisms, like Proof of Stake.
One of those is our transaction processing capability.=
On a good day, Proof of Work is capable of processing anywhere between 10 and 20 transactions per second worldwide.
This may sound like a lot, but it still leaves us a wi= de gap to conventional processing powers, that something like Visa's payment processing network which can scale up to over 70,000 transactions per secon= d.
So, in order for blockchain to continue to be a succes= sful solutions platform, we know that we're going to need to find other consensus mechanisms, which allow us to scale up that transaction processing speed in= to a range where we start to compete with conventional technology.
There are also some other criticisms behind Proof of W= ork that are leading us to alternative methods, like Proof of Stake.
One of those is the idea of centralization.
As you know from this course, one of the key tenants of blockchain is the idea of decentralization, that no one central authority, intermediary or participant, should ever have too much power or control in a blockchain network.
What we're seeing right now with Proof of Work is an a= rm's race, where folks are competing with very various specialized pieces of equipment, specialized hardware, specialized mining rigs, in order to mine = most efficiently.
And this can be done most efficiently in large data ce= nters where electricity is cheap.
Right now, almost 80% of the processing power behind t= he Bitcoin network resides in six major data centers in mainland China.
A lot of advocates and blockchain purists think that t= his is far too much centralization in one geopolitical region of the world.
One way we aim to change that is through Proof of Stak= e, where we remove the work component of group consensus and we replace it wit= h a very specialized form of gambling or wagering.
The idea of being that if we no longer require special= ized hardware in order to come to consensus, we can allow anybody with any kind = of device to participate in consensus.
That may be you at home with an old laptop, or a frien= d with a smartphone, or a tablet, or an iPad, that sits on your nightstand most da= ys and doesn't get used.
This allows for a much wider and more decentralized ra= nge of devices and potentially a much larger network size to participate in consen= sus.
Speed and the idea of decentralization are big drivers behind the move to Proof of Stake.
And we're gonna see how well that works out.
We'll see Proof of Stake finally go live in Ethereum l= ater this year (2018), certainly with more blockchains to follow if it becomes a successful consensus mechanism.
When you hear the debate these days about Proof of Work versus Proof of Stake, and you're trying to understand what do they mean and why are we looking at transitioning from one to the other, understand that we're just trying to overcome some of those big limitations behind Proof of Work, the consensus mechanism that has served us so well to date.
We're trying to find consensus mechanisms that most importantly allow us to scale up, to get our transaction processing power on par with conventional technology, and we're also trying to remove some of t= he centralized aspects that we've seen form around Proof ofWork.
We talk about Proof of Work and Proof of Stake in much greater depth in other modules in this course.
If you're curious about the difference between them, h= ow they work and what the actual implementation differences are, be sure to ch= eck out those other modules.
Let's recap
differences between Proof of Work and Proof of Stake:
Bitcoin, the first bl=
ockchain
to appear, uses Proof of Work which requires miners to solve a complex
cryptographic mathematical puzzle for which they get rewarded. Block rewards
are newly minted Bitcoin granted to the miners that solve the puzzle first.
Built into the Bitcoin blockchain protocol, is an event called halving.&nbs=
p;Bitcoin halving happens
every four years and Bitcoin’s block reward gets cut in half. The halving
occurs when the block height reaches a certain point (210,000 blocks) which=
is
programmed into the protocol. The first halving occurred in November 2012 a=
nd
the block reward was cut from 50 BTC to 25 BTC. The second occurred July 9,
2016 and the reward was reduced to 12.5 BTC. The third occurred on May 11th
2020, cutting the block reward to 6.25. The next halving is estimated in the
year 2024 and the reward will be reduced to 3.125 BTC. The Bitcoin network =
is
programmed to produce only 21 million bitcoin and the halving is what keeps
inflation in check by slowing down the distribution. About ⅔
Ethereum currently us=
es Proof
of Work for a consensus model. Ethereum was introduced in a white paper
by Vitaly Dmitriyevich "Vitalik" Buterin, a Russian-Canadian entrepreneur and programmer=
from
Toronto. He envisioned the second-largest cryptocurrency when he “forked” or
copied the Bitcoin code, made improvements and created the Ethereum blockch=
ain.
This new blockchain was not only a currency exchange system but along with =
the
Hyperledger Fabric is a private permissioned blockchain
platform that breaks consensus into components, allowing users to pick a
consensus algorithm for their particular situation. Instead of a predetermi=
ned
consensus model, Hyperledger has an ordering service that performs consensus
related events, this ordering component can pick the consensus model that b=
est
suits the blockchains needs. By approaching consensus in this modular fashi=
on,
Hyperledger DLT’s can change consensus models without huge overhauls to the
code base.
As explained by Demiro Massessi<= /span>,
&qu= ot;Hyperledger Fabric deliberately avoided hard-coding a consensus mechanism into the prot= ocol by defining an “orderer component” that performs all of the consensus-relat= ed operations. This allows users of Hyperledger Fabric to select a consensus algorithm that fits their use case without being forced to make large-scale code edits".
<=
span
style=3D'font-size:13.5pt;font-family:"inherit",serif;color:#00688D'>Corda<=
/span> is
a private permissioned blockchain. Each Corda network has a notary service =
made
up of independent parties that approve blocks using any applicable consensus
algorithms.
As mentioned in Jamiel Sheikh's book “Mastering Corda: Blockchain = for Java Developers”, R3 provides a set of Corda applications called The Corda Business Network Toolkit to manage one or more Corda networks. Co= rda does not follow the standard blockchain model of transactions being bundled into blocks and then being finalized by the network as a whole. Instead, a Corda network contains one or more notaries consisting of several independe= nt parties. Transactions in Corda are finalized by a notary with a multiparty digital signature using an algorithm like Raft.
In this chapt=
er,
we discussed:
·&nb=
sp;
Smart contrac=
ts
and benefits from using smart contracts.
·&nb=
sp;
Differences
between blockchain security vs. standard security.
·&nb=
sp;
Differences
between private and public blockchains.
·&nb=
sp;
Factors in
deciding on blockchain.
·&nb=
sp;
Transaction f=
low
in blockchain.
·&nb=
sp;
Consensus
mechanisms used in blockchain.
In this secti=
on,
we will cover blockchain governance. We will start by discussing the
cooperative way blockchain companies share the computer code for this
technology. We will also explore how this open source environment is fostering
new innovations. And then we will examine who really is in charge of
blockchains and how the network effect determines the direction a blockchain
will take.
Next, we
will take a look at how these trustless systems with open interactions=
are
more secure than past systems. Finally, we will dive into the ide=
a of
collaboration among parties who don't trust each other and how blockchain
technology is changing how the global community can interact. This new form=
of
world wide collaboration can be the key to solving the world's toughest
problems.
By the end of
this chapter, you should be able to:
·&nb=
sp;
Discuss open
source communities and blockchain source code.
·&nb=
sp;
Discuss the
different types of governance models and what types of governance are used =
in
public and private blockchains.
·&nb=
sp;
Analyze
governance types in a blockchain and determine which are used for the more popular
blockchains.
·&nb=
sp;
Analyze examp=
les
of Decentralized
Autonomous Organizations (DAOs).
·&nb=
sp;
Summarize the advantag=
es
and disadvantages of a consortium blockchain.
Blockchain
technology and the developers who work with it reinforce the basic tenet of
decentralization in many ways. Not only by
decision making consensus models, but also the way in which it distributes =
the
software code.
·&nb=
sp;
Proprietary/c=
losed
source code
Software
controlled by the person, team or organization who created it and maintains
exclusive rights over it. Only the original authors can legally copy, inspe=
ct,
and alter the
software. Most users of proprietary software sign an agreement giving
permission to use the software but not alter it. Microsoft Office is an exa=
mple
of proprietary software.
·&nb=
sp;
Open source c=
ode
Computer code
that describes a specific approach to creating software. When describing to=
ols
for distributing open sour=
ce
code Discipline Tools states, Open source initiatives embrace and celebrate
principles of open exchange, collaborative participation, rapid prototyping,
transparency and community-oriented development. Open source software is co=
de
that anyone can inspec=
t,
modify and enhance. Much of the Internet was built on open source technolog=
ies.
Users of the computer software never interact with the source code, rather =
it's
manipulated by programmers who improve and fix it. As with proprietary soft=
ware, users must
accept the terms of the license, but they are dramatically different
structurally. Linux and Kubernetes are examples of open source software.
Open source
software fosters collaboration by sharing code and encouraging modifications
and improvements. Instead of charging for the software program, software
developers find it more lucrative to charge for service around developing a=
nd
maintaining these open source projects.
Developing
software in an open source environment mean=
s a
willingness to share and collaborate in a transparent way.
·&nb=
sp;
Control
To a develope=
r's
open source means an individual can contribute to the direction the code ta=
kes.
This open participation means coders who participate the most have more
influence over the direction of the code.
·&nb=
sp;
Training
The ability to
copy code and make your own changes in test environmen=
ts
act as invaluable hands-on training. This also fosters innovation as
programmers can devise previously unthought-of functionality and code
direction.
·&nb=
sp;
Security
In open sourc=
e,
software programs are considered more secure because they are open to peer
review where errors can be spotted. Coders are encourag=
ed
to test code, find errors and develop fixes to bugs as long as they follow =
the
process the network has in place.
·&nb=
sp;
Stability
Open source
projects have a certain amount of code stability due to the openness for pu=
blic
review. A publicly distributed source code is openly reviewed and can expos=
e situations th=
at
may not have otherwise been tested.
·&nb=
sp;
Community
Open source
inspires the community to get involved. When contributing to an open source
project, you join a community of people that ultimately affects the software
you are interested in.
The programmi=
ng
code for Bitcoin, Ethereum, Hyperledger and other blockchains is open sourc=
e.
Humans are tr=
ibal
by nature, we tend to attract each other and build tribes, villages, towns,
cities, states and countries. With these interactions comes a need to direct
the behavior of the group. These directions become the social norms among
those who are living with or near each other. These norms become the rules =
by
which the behavior of the group is governed. It doesn’t matter if the
governance is the real world or the digital world, there are shared underly=
ing
principles within both. Let's
take a look at who is involved.
=
Governance ca=
n be
undertaken by a government, market, network, organization, social system or family.
For a governa=
nce
process to work effectively, the above
three principles will need to agree to the rules that govern the behavior. =
The
rules should be aligned with the overall participants' goals, and the leade=
rs
should have the ability to enforce positive and negative actions.
Now that we h=
ave
a simple understanding of governance, let’s analyze how this is ta=
king
place in both the standard world and the blockchain world.
Every business wants to make sure it's getting the bes= t out of technology spending.
IT governance is a formal framework that provides a structure for organizations to ensure that technology investments support business objectives.
Now we all know that, despite our best efforts, things occasionally do go wrong.
A large part of modern governance efforts includes pla= nning for disasters in a way that ensures business continuity - the ability to re= main available to customers no matter what.
Modern decentralized solutions are most often created = in a cooperative or consortium format - a shared joint effort business organizations.
In these initiatives, it is important not only for cle= ar and comprehensive governance to be in place, but for that governance to be consistent across participating organizations.
These type of cross-organizational governance efforts represent an entirely new type of project initiative, and will require busi= ness analysts, solution architects, product and program managers, and executive leaders who understand the incredible potential and massive disruption that decentralized solution architectures bring to focus.
A basic
description of governance can be defined=
as
a system by which behavior is directed. This direction is guided by a set of
norms or rules and a way to enforce or keep order. The mechanism to enforce
these policies can take many forms from a dictator who has complete control=
to
a democratic governa=
nce
model where the voice of the majority is recognized.=
span>
=
=
Blockchain
governance models reflect a more democratic flavor due to the open source
environment. Blockchains are composed of a
community of users who work together to strengthen the system. The degree in
which the majority rules can vary.
·&nb=
sp;
Representative
democracy
This type of
governance has a few individuals, empowered by the group, to suggest new ru=
les
and guide future direction. The amount of authority the representative has is
granted by the majority. The representatives selected reflect the views of =
the
majority and are given authority to guide the community. The control comes =
from
the community and representatives are presumed to act in the best interest =
of
the governed. This =
type
of governance is more efficient as only a few debate the issue and decide on
policy. Issues can occur when the majority opinion unevenly reflects the
community, causing minority groups to be underserved. Also the assumption is
that the representatives=
are
acting on the best behalf of the group and not in their own best interests.=
·&nb=
sp;
Direct democr=
acy
All decisions
regarding the governance of the group are voted on by the entire community.=
In
this form of governance model every vote counts and people have more control
over the quality of policies. In this model it is best to have an educated
community where everyone is
willing to participate for the good of the whole.
Each and every blockchain ecosystem that has or is bei=
ng
created will need some kind of governance mechanism in place. As discussed =
in
the “Bitcoin and Blockchain Governance: What It Is and Why It
Matters” article by Evan Karnoupakis, traditional syste=
ms
and laws are made and then enforced. When participants (miners, developers,=
and
users) in the network are interacting, ideally they are acting in a way tha=
t’s
best for the overall group. Being able to build a governance structure in a
decentralized (sometimes anonymous, as well) world has proven to be extreme=
ly
difficult, but this is a problem that many DLT companies are in the midst of
solving.
Most governance structures in the blockchain ecosystem= are looking to achieve similar goals, such as:
· Protocol changes and technical upgrades.
· Critical bug and vulnerability fixes.
· Using pooled funds for research and developm= ent.
These goals can be achieved through many different met=
hods
of governance. When designing a blockchain, choices between on-chain and
off-chain governance must be balanced.
In the on-chain governance, rules for instituting chan= ges are encoded into the blockchain protocol. This means that any decision being made is automatically being translated into code (e.g. decisions concerning block size). Developers propose changes through code updates and each node votes on whether to accept or reject the proposed change.
On the other hand, as discussed in the Medium article&= nbsp;"Revisiting the On-chain Governance vs. Off-chain Governance Discussion",
&qu= ot;Off-chain governance can be seen as decision-making that first takes place on a social level and is later actively encoded into the protocol by the developers. For instance, Bitcoin developers share their improvement proposals (BIPs) throu= gh a mailing list, whereas Ethereum collects improvement protocols (EIPs) on Git= Hub.
Fred Ehrsam (Coinbase co-founder) argues that the Bitcoin governance system resembles the checks and balances system of the US government. Just like the Senate, developers submit a pull request to the community, the miners take = the role of the judiciary who decides whether or not proposals are adopted in practice. Lastly, the users are just like citizens in a nation or state and= can revolt and switch protocols or sell their tokens".
In the previo=
us
chapter, we discussed the
decentralized characteristics of blockchains. But if blockchains are
decentralized, how are decisions made and by who? Open source software
organizations and open source software development projects need a way to
manage projects. Most organizations are centrali=
zed
and have a set leadership team. Before getting into the details of how
governance works on the blockchain, it’s important to have a clear definiti=
on
of what blockchain governance is.
In order for a
blockchain to survive, it must adapt to the needs of its users and advances=
in
technology. The way the cha=
nges
are debated and decided upon is important for these decisions to be
implemented. A decentralized ecosystem is designed not to be under the cont=
rol
of a single source, there is no CEO to take responsibility for issues. This
means blockchains need a new
strategy for governing the policy it wants to adopt.=
span>
Strategies mu=
st
include incentives so the members want to be good actors in the system. The
efforts of the group must be coordinated to be productive. Both of these
elements are necessary in blockchain governance models.
Several different blockchain governance strategies hav=
e been
proposed and implemented for different blockchains. Let's review some
blockchain governance strategies sorted from the fewest to the most members
directly involved in the decision, as discussed in the "Blockchain Governance In A Nutshell"=
a> article
by Demiro Massessi:
·
"Benevolent dictator for life=
The
original creator or lead developer of a cryptocurrency has the final say on=
all
decisions. The simplest governance strategy is nicknamed benevolent dictator
for life. In this strategy, the creator of the blockchain is the final
authority on all decisions regarding the blockchain (...).
·
Core development team
A
team of the most active developers decides what functionality should or
shouldn’t be included. The next step up places control of the blockchain
roadmap in the hands of a core development team. This is a strategy commonly
used in open source programming projects, where users are able to offer or
request features, but developers have the final say on what is or is not
included in the official release.
·
Open governance
The
team making governance decisions for the blockchain is chosen by the users =
of
the blockchain. Some blockchains use the open governance method of handling
governance of the blockchain. In this system, the team that makes the final=
technical
decisions for a system is selected by the system’s users.
·
On-chain governance
The
rules for how the blockchain operates are stored on-chain in smart contracts
with built-in capability and procedures for modifications. A
blockchain-specific governance strategy is on-chain governance. In this for=
m of
blockchain governance, the rules describing how the blockchain should opera=
te
are stored on the blockchain itself. These regulations typically are
implemented as smart contracts on the blockchain with built-in methods for
users to modify the rules based upon their needs and the needs of the
blockchain".
Due to blockchains built in trust and collaboration
mechanisms, new pathways are opening up for enterprises to work together. A=
new
form of collaboration fostered by blockchain is consortiums. Consortium, as
defined by Webster's dictionary, is
"an agreement, combination, or group (as of companies) formed to undertake an enterprise beyond the resources of any one member&qu= ot;.
Most enterprise blockchain solutions will be implement= ed by a "consortium" of enterprises, building one or more applications = on top of a "blockchain platform". These consortiums are already for= ming in many industries to deal with the particular problems of those industries. Alliances in Trade Finance, Carbon Emissions Accounting, Social Impact and Healthcare have working blockchain consortiums solutions.
Blockchain governance comes down to the users. For a
blockchain community to thrive it needs a robust community. Changes to the
operation of the blockchain must be accepted by the majority of its users or
they will create a new blockchain that does. The process by which changes a=
re
made follow these five steps discussed by Pierre Rochard in his article&nbs=
p;"=
Bitcoin
Governance":
The changes to a blockchain starts with research. Befo= re the problem or situation can be addressed it must be understood. A proposal consists of a problem definition and a proposed solution. Implementation requires a little bit more work as the nodes and user must agree to the cha= nge or it can not be enforced.
As explained in the "Blockchain Governance In A Nutshell"= a> article by Demiro Massessi:
&qu= ot;Major changes to a blockchain require a hard fork. A hard fork is a change to the blockchain protocol that makes it incompatible with old clients.
For= a hard fork to be successful, users need to agree to follow it. Users can refuse to follow a hard fork, creating a divergent blockchain. The DAO Hard Fork on Ethereum created Ethereum Classic.
Des= pite the official story of who governs the blockchain, in the end, the users are= the ones who really make the final decisions of what will or will not be includ= ed in the blockchain. With the huge number of potential options, users can aba= ndon a blockchain that makes changes that they disagree with.
Any= major change to a blockchain requires a "hard fork". All this means is = that the blockchain protocol has changes that are not backward compatible, so blockchain clients that do not make the switch will not be able to operate = on the main blockchain. A soft fork is a change that invalidates previous valid blocks by accepting new blocks, soft forks are backwards compatible. For a = hard fork to be successful, users of the blockchain need to make the decision to update their software protocols to incorporate the new changes.=
If = not all users decide to make the switch after a hard fork, a divergent blockcha= in can be created. Since the blockchain is a distributed network, the decision= to implement a hard fork doesn’t cause the old version of the blockchain to be= come non-functional. Users who choose not to follow the fork can decide to maint= ain the old blockchain, fragmenting the blockchain network".= p>
As we mentioned in pr= evious sections, Bitcoin uses a Proof of Work model to encourage miners to add blo= cks to the network. This governs the operations of the blockchain. But what hap= pens when changes need to be made? How do they get implemented? The Bitcoin community consists of three main players: developers,&= nbsp;miners, and&= nbsp;users. None = of these participants have the ability to make emergency decisions when unexpe= cted situations occur. Bitcoin uses an off-chain governance model where decisions are balanced by the developers, miners and users. In blockchain, developers must write the code to change the blockchain. Without the consent of the mi= ners and users, the developers have no way of enforcing the change. Miners and u= sers must choose to adopt the new software changes.
When a change to the Bitcoin protocol is needed, devel=
opers
will share the proposed change with other protocol developers. This improve=
ment
sharing could be in the form of an email to the bitcoin-dev mailing list, a
formal white paper, and/or a Bitcoin Improvement Proposal (BIP). Code is
written and tested that will enact the change. If developers in the communi=
ty
approve the proposals and resulting code, the proposal is put to a vote on
chain and the miners decide if the proposal is implemented. This occurs thr=
ough
a hard or soft fork.
This system is not without faults, as can be seen with= the SegWit improvement protocol which alters block size. The vision surrounding blockchains deals with decentralization. By implementing the SegWit changes= , a change in how the Bitcoin blockchain protocol operates, a central authority= was responsible for enacting the change. To many in the community this decision went against the fundamental tenets of blockchains decentralized philosophy= .
As a result, the Bitcoin community was torn and the Bi=
tcoin
Network split into two different chains Bitcoin (BTC) and Bitcoin Classic
(BCH). The Bi=
tcoin
Foundation is set up to educate and promote the Bitcoin
Blockchain.
Vitalik Buterin first described the concept of Ethereum through a Whitepaper&nb= sp;introduced at the Bitcoin Convention in Miami 2014. It was based on the code for Bitco= in, but included a logic engine that could execute smart contracts. By connecti= ng computers using the Ethereum blockchain, computing power is aggregated crea= ting the Ethereum Virtual Machine. Ethereum is not only a functioning blockchain with smart contract capabilities, but a platform for new blockchains to be built upon. The EVM computing does not come free, a GAS price is charged for the GAS needed to perform the transaction’s computations. This GAS fee can change dramatically depending on network conditions as the current price of Ether is part of the calculation.
Like Bitcoin, Ethereum's three main players (developer,
miners and users) must update code to improve on functionality. Ethereum Improvement
Proposals (EIPs) are standards specifying potential new
features or processes for Ethereum. EIPs contain technical specifications f=
or
the proposed changes and act as the “source of truth” for the community. A =
note
worth EIP was the code for issuing a token. The Ethereum Request for Comment, ERC-20 introdu=
ced
the standards for issuing utility tokens on blockchain based on Ethereum
protocols. The Beacon Chain introduced the Proof of Stake
consensus model and the concept of sharding. Shardin=
g is
the concept of running parallel side chains to alleviate congestion of the
network. The Berlin Hard fork and the London=
Fork are
improvements to stabilize fees paid to the miners so these fees do not
fluctuate with the price of Ether.
Ultimately, Ethereum uses the benevolent dictator for = life mode of blockchain governance. While user input and input from the developm= ent team is welcome for Ethereum, Vitalik Buterin is the final authority on decisions regarding the Ethereum roadmap.
One famous
example of this type of fragmentation is the DAO hack on the Ethereum netwo=
rk.
The DAO was an Ethereum smart contract that completed a record-breaking
crowdfunding campaign on the Ethereum network, with all of this value stored wi=
thin
the DAO smart contract. A flaw in the smart contract’s code allowed an atta=
cker
to create another version of the smart contract under their control and sip=
hon
off a portion of the DAO contract’s funds, worth roughly 72 million dollars=
at the time. Aft=
er
much debate, the Ethereum network decided to implement a hard fork that all=
owed
investors of the DAO to reclaim their stolen Ether.
This was a ve=
ry
contentious decision, because the historical ledger in the blockchain is
supposed to be immutable and all transactions are final. Smart contracts are suppose=
d to
be their own final authority, so any action that could be performed with a
smart contract, including exploiting a programming flaw to drain value from=
it,
is considered fair game. The Ethereum network’s decision to reverse the DAO
hack went against the
principles of blockchain’s immutability and the supposed self-regulation of
smart contracts.
Some of the
Ethereum network refused to follow the DAO hard fork, resulting in a diverg=
ent
blockchain where the DAO hack was successful. This created the Ethereum Cla=
ssic
cryptocurrency, which shares the same hist=
ory
as Ethereum up to the DAO hack, but is completely independent after that po=
int.
Hyperledger=
was
introduced as an open source blockchain project sanctioned by the Linux
Foundation. Spearheaded by <=
span
style=3D'color:black;mso-color-alt:windowtext;background:white'>Brian Behle=
ndorf, its missi=
on is
to provide the community with the tools and education to foster distributed
ledger technology on an enterprise level. Hyperledger frameworks use an Open
Governance model to make technical decisions regarding the Hyperledger
environment. The Hyperledger
<= span style=3D'font-size:13.5pt;font-family:"Inter",sans-serif;color:#00688D; background:white'>Corda is= an open source blockchain project designed for business. Developed by R3, an e= nterprise blockchain software firm, in collaboration with over 200 technology and industry partners. The Corda platform was launched in September of 2017. Co= rda also uses an Open Governance model to make technical decisions regarding the future of the blockchain. The Corda Network Governing Body is selected to represent the interests of all users in the Corda network.
Working Groups and Special Interest Groups are
consortium-based discussion sessions to complete a task or develop a
whitepaper, prototype, platform or project. These collaborations are aimed =
at
developing open source standards and projects to accelerate the acceptance =
of
blockchain.
Enterp= rise Ethereum Alliance Working Groups
There are two types of the EEA working groups:
Technical which tackles developing standard and resolv= ing specific problems.
Core Specific Working Groups which ensures quality interoperable implementations.
Some examples of the EEA’s working Groups include: Cli= ent Interoperability Testing, Core Specifications and Cross-Chain Interoperabil= ity.
IG’s are designed to foster information exchange across vertical, industry-centric groups where EEA members in specific industry segments can exchange information.
Some examples of the EEAs Interest Groups are: A.I. and Blockchain, Ethereum Mainnet, Supply Chain, Financial Services and Tokeniza= tion.
It is a Linux sponsor environment for projects, Working Groups and Special Interest Groups to exchange ideas and develop projects.<= /p>
Working Groups in Hyperledger are developed for specif= ic purposes. For example, the Learni= ng Materials Working Group focus is on supplying templates, assisting the project in developing documentation and collecting and catego= rizing resources created by the vast Hyperledger community. The LMDWG wiki home pa= ge also provides a list of weekly events in and out of the Hyperledger communi= ty. Each working group has a wiki home page and a “Join This Group” button.
Some example the Hyperledger’s Working Groups: Identi= ty, Divers= ity and Inclusion, Perfor= mance and Scale, and Techni= cal Working Group China.
Special Interest Groups at Hyperledger are designed to tackle cross industry issues by supplying an open environment for informati= on exchange. The Climate Action and Accounting SIG is develop= ing a carbon calculator spearheaded by Si Chen for global consideration. The&nb= sp;"= Resources" section on the wiki page has current information about the global emergency. Please consider joining this conversation as it affects all humans.
Some examples of other Special Interest Groups: Capital Markets, Healthcare, Public Sector, Social Impact, Supply= Chain, Media and Entertainment, Teleco= m, and Trade Finance.
Govern= ment Blockchain Association (GBA)
The GBA promotes blockchain technology by empowering individuals and organizations to connect, communicate, and collaborate to s= olve public sector challenges around the world.
The GBA hosts international events like the Government Blockchain Week at the US Capital where they recognize new blockchain emerging projects with an award ceremony. Spearheaded by a tireless Gerard Dache, the GBA cultivates professional work flows between technologists, pu= blic policy makers, application specialists, and those who want to learn about t= he new and emerging digital currencies. Furthermore, GBA acts as a catalyst in creating a public dialogue around the creative, profitable, and positive leveraging of blockchain technology.
You can find examples of the GBA Working Groups here= span>.
As previously mentioned, blockchain is about community. Become part of a growing community by joining a special interest group or working group and become part of the conversation.
Let's discuss governance with autonomy.
Let's jump 20 to 25 years into the future and see where we've gotten with AI and autonomous drive.
Driverless cars have now evolved to the point where a company can own a fleet of autonomous vehicles all driving in a variety of directions, moving items as well as people.
But it's more than just that. Each car is pre-programm= ed with a set of guiding principles.
For example, don't hurt humans, reach X percentage of profits within the month, maintain a set percentage of holistic health, etc= .
Consider the following scenario: A vehicle arrives to = pick up a passenger for transport within a set time frame to take them to their scheduled meeting.
The passenger is running late and therefore decides to= take advantage of the option to pay an extra fee for an expedited route.
Conceivable solutions to provide this options could in= clude designating a lane on the highway for users paying the premium or sending micropayments to other vehicles in exchange for adjusting their travels to create a clear path for the expedited vehicle.
Once the passenger has been delivered to the appropria= te destination, the vehicle recognizes the need for maintenance after running = an internal diagnostic.
After repairs are completed, the vehicle heads off to a charging station and then moves on to the next customer.
This can eventually be applied to blockchain governanc= e.
More specifically, decentralized autonomous organizati= ons.
This is a concept that quickly manifested itself after= the Bitcoin white paper spread and people began to run through thought exercise= s.
An organizati=
on
whose operating rules are encoded into a computer program controlled by its
members. It is composed of a complex stack of smart contracts that form a
decentralized application (Dapp).
In simple ter=
ms,
a DAO is an organization that runs on a stack of computer programs (called sm=
art
contracts in the blockchain world) that are all interconnected to maintain a
set of pre-programmed rules that have been previously voted upon by a
community. When thinking about regular corporations stripped all the way do=
wn
to their bare bones, they a=
re
basically different groups following rules, responsibilities, and duties gi=
ven
from those sitting at the top of the organization. The bigger they are, the
more complex these pieces become. At the moment, a DAO's goal is to automate
this complex system p=
iece
by piece.
Within each D=
AO,
there is a kind of
pooling process for humans to contribute new rules into the system. These r=
ules
are then presented to the community and voted upon, based on the DAOs
previously created rules. These new rule commitments will need majority
agreement (may be different for each
DAO) from the community to make this rule real. If this new computer-coded =
rule
is accepted by the community, then it will be placed into the stack of other
computer coded rules to improve the overall autonomous organization.=
As our technology advances, the world around us become= s more and more automated.
Take securities trading, for example.
In the 1950s, experts began designing the algorithm and rules that an automated trading system should follow.
In the 1980s, technology began catching up and those algorithms could finally start to be implemented.
Systems improved in the 1990s.
And in 2008, the world's first fully automated trading system, Betterment, went live.
Just six short years later, more than 75% of shares tr= aded on US exchanges were made by fully automated systems.
As we continue to use technology to automate more and = more of our business processes, the concept of a DAO, or a Decentralized Autonom= ous Organization, has emerged.
The basic idea behind a DAO is simple.
Most business processes are governed by a set of well-defined rules and procedures.
These rules and procedures can be codified as smart contracts on a decentralized network, thus, automating business process.
This decentralized nature of Web 3.0 technologies like blockchain makes it much more fault-tolerant, as well as providing a built-= in layer of redundancy, backup and error correction.
Consider the following example set sometime in the near future, when fully autonomous vehicles and consumer grade artificial narrow intelligence are common.
An entrepreneur notices a lack of ride-sharing services available in her town and decides to enter the market.
She saves enough capital to purchase a fully automated vehicle, as well as an AI Deep Learning system to analyze traffic and demand patterns and design optimal routes for the vehicle to cover.
Now, over time, this single vehicle earns enough to fu= nd the purchase of a second automated vehicle.
The business is able to manage its own operations, forecasting and modeling, and grow with little to no human intervention.
This is the conceptually ideal model of a DAO.
We’re focusin=
g on
governance in the consortium space, not governance within an enterprise
company. So what is a "consortium"? A consortium is just a groupi=
ng
of institutions (possibly individuals) getting togeth=
er
to achieve a mutual goal.
This goal
Governance
becomes much easier when it’s in a controlled environment, with each member
agreeing upon set rules prior to jumping in with everyone else. Governance
structures vary by industry and profit vs. non-profit, so there will be no =
set
governance model everyone uses, but there are two we’ve come across in the
blockchain space:
·&nb=
sp;
One is includ=
ing
the formation of smaller subgroups to work on specific issues.
·&nb=
sp;
The second is
providing several levels of potential engagement, ranging from participatio=
n in
monthly calls to active technology developmen=
t.
The point we
would like to get across here is tha=
t a
consortium governance model is currently more efficient than most decentral=
ized
blockchains.
Almost all
consortiums up to this point have been permissioned and=
not
decentralized permissionless blockchains, which is an opportunity cost most
companies make when joining. At a high level, a permissioned blockchain is =
just
that, a chain in which others must have permission to operate on. So, all t=
he
nodes operating o=
n a
permissioned chain have been verified by the central institution that is the
authority of the network and the transactions that are confirmed don’t
necessarily have to go through all the nodes.
These consort=
ium
blockchains have historically taken two approaches:
·&nb=
sp;
Business-focu=
sed
consortia
They aim to b=
uild
and operate blockchain-based business platforms =
to
solve a specific business problem (e.g. Digital Trade Chain – focused on
cross-border payments).
·&nb=
sp;
Technology-fo=
cused
consortia
They seek to
develop reusable blockchain platforms based on technical standards (e.g.
Hyperledger).
Let's see what are so= me pros and cons of consortiums:
In this section, we're going to discuss identity on the blockchain.
Let's start by understanding why we even need to have = an identity on the blockchain.
Centralized systems can be coerced by other forms of authority to shut down their network.
Let's take Napster for example.
Napster had a decentralized network architecture, but = they maintained the centralized authority.
Therefore, the central authority could be attacked and= , by taking out the central authority, could effectively control Napster.
This is because Napster relied on that mix of centrali= zed control over a decentralized network.
This impacted identity because you need an identity to control.
Torrents on the other hand, they do not operate in the= same fashion.
Torrents provide a decentralized network with decentra= lized authority.
This allows the nodes to manage identity differently.<= /p>
It's also the reason why torrents are still being used today, in spite of the entertainment industry's best efforts to stop it.
Torrents remove the central authority.
So, this begs the question "Why didn't point-to-p= oint networks like torrents attain the same level of acclaim as blockchain?"= ;
Because there's no guarantee that the nodes would do t= he right thing.
Nobody could guarantee that the nodes would cooperate = with each other.
This leads to an extremely important question.
How do you incentivize the nodes on the network to fol= low the rules?
In a torrent system, anyone can download and share a f= ile, but there's not a real incentive to be a good actor on the network.
What happens when people do something dishonorable on a torrent for instance, and stop seeding the files that ate up bandwidth or occupied space on their computers?
Instead of music going to the network or other files, = what if it were money going through a point-to-point network, through a bank network, let's say?
Your transactions would never be processed reliably.= p>
You couldn't trust that the processing was not messed = up, either deliberately or accidentally.
Further, because of anonymity and the way that identity works in the blockchain, you wouldn't have a way to punish or reward the actors.
Blockchain solved this problem.
It perfectly incentivized how to create a decentralized self-contained network using crypto economics.
This differed from earlier point-to-point networks bec= ause it offered economic incentives to the nodes that followed the rules.
Nodes are given money for following the rules.
This money is in the form of cryptocurrency.
The nodes were punished for tampering with the system = or with past transactions, or submitting a bad transaction.
This is why all public blockchains can operate without= an authority.
It is also the reason why cryptocurrency is mandatory = for a public blockchain, and not needed for a private blockchain.
Because you need a way to incentivize the actors on the network.
Consider how these rewards and these punishments work = and how a system without a central authority can determine what is valid and wh= at is invalid.
On the blockchain, identity is important.
You have to be able to prove that your assets actually belong to you.
Different blockchains they use different systems for tracking identity and identity information, but most are based on the principles of public key cryptography.
Before we get into the details of how identity works o= n the blockchain, we need to discuss the basics of public key cryptography.
The security of a public key cryptography it's based on let's call them hard math problems.
So, by that, I mean a hard math problem is one where i= t's easy for someone to calculate it, but it's hard for someone to reverse that calculation.
Take multiplication, for example.
All things considered, multiplication is easy.
If you have a little bit of time, something to write w= ith, you can pretty much multiply any two numbers and get the right answer.
A computer can do can do that even more quickly.
Factoring on the other hand, it's hard.
The best way to factor a large number is to try every possible factor until you find the right one.
Well, this approach works well if the number to be fac= tored is small.
It quickly becomes virtually impossible with a suffici= ently large factor.
Some public key cryptography algorithms are designed s= o that breaking the algorithm requires factoring very large, usually prime numbers= .
Another hard math problem used in public key cryptogra= phy is based on exponents and logarithms.
Exponents are easy, since it's essentially multiplicat= ion, and logarithms are hard, since you're essentially factoring.
Most public key algorithms that use exponents use a ty= pe called modular exponents.
All this means is that when they're done calculating t= he exponent, they divide the result by a publicly-known value called the modul= us, and they keep only the remainder.
RSA is a commonly known public key cryptography algori= thm.
It's based on exponents and logarithms.
RSA uses the power law of exponents.
What this means is that, if you take a number, you rai= se that number to a power, and then raise the result to another power, that yo= u'll get the same result as if you simply multiply the two exponents together and then raise the base to the result.
An RSA user chooses two exponents so that any number r= aised to the product of the two exponents in a given modulus produces the original number.
One of these is called the public key and that public = key is distributed freely, while the other is the private key, which is intended t= o be kept secret.
If someone wants to send a private message to the user= , they convert it to an integer using a publicly-known method.
They raise it to the power of the user's public expone= nt and they send the result to the user.
The user raises the received value to their private ex= ponent producing the original message.
RSA is secure because an attacker must be able to calc= ulate a logarithm to determine the secret message.
Since this takes guessing every possible value until t= he correct one is found,
RSA is designed to make the number of potential values= so large that finding the right one is pretty close to impossible.
Another public key algorithm uses different math behin= d the scenes, but the basics are effectively the same.
A user creates a public key and the private key that c= an be used together for either encryption or signing, which we'll talk about late= r.
The algorithms are designed so that an authorized user= only has to do the, quote, "easy calculations", while an attacker has = to perform the hard calculations, and the algorithm is designed to make attack= ing so that the hard algorithms are close to impossible.
Public key cryptography is how identity is handled on = the blockchain.
A user's address on the blockchain it's their public k= ey.
This has several useful properties.
Users do not need to reveal their identity on the blockchain, but they can positively identify themselves, since determining their private keys requires solving a quote, "hard problem".
Anyone can send a user an encrypted message, since the= y have easy access to their public key.
Users can verify the validity of their transactions us= ing digital signatures.
You can think of a digital signature as the opposite o= f an encrypted message.
In RSA, anyone can send an encrypted message to a user= by converting it to a number, raising it to their public exponent, and sending= the result to them.
The user's public and private keys are designed so tha= t the users can retrieve the original message by raising the received message to their private exponent.
RSA digital signatures involve the opposite process.= p>
A user writes a message and raises a condensed form of= the message to the power of their private exponent to create a signature, then = they publish that signature.
Their public key and their message are both published together.
Anyone can verify the signature using a simple three-s= tep process, condense the attached message using the same method as the message writer, the message originator, raising that attached signature to the user= 's public key, then verifying that the results of the previous two steps are identical.
Digital signatures work for the same reason that encry= ption works in RSA.
An attacker needs to know the user's private key to pe= rform either operation, and the algorithm is designed to make that process diffic= ult or very close to impossible.
This means that identity on the blockchain boils down = to the possession of a user's private key.
So, it is absolutely important that that private key b= e kept safe.
In Ethereum, a user's identity is managed using a publ= ic key or address, and the user can use the corresponding private key to sign transactions and read encrypted messages that are sent to them.
In Hyperledger (Fabric) and Corda, identity is encoded= in x.509 certificates, which include the user's public key.
In Corda, specifically, certificates can either be pub= lic, which means that they are published to the blockchain, or confidential, mea= ning that they are only shared with the parties that the owner performs transact= ions with.
Self-sovereign identi= ty and blockchain solutions introduce identity management in a way that can improv= e a system considered broken. This topic will be examined in the next chapter. = In this section, we will cover identity as seen through transactions and how a= nd if you want your identity tied to a transaction.
In this section, we'll discuss anonymity on the blockc= hain.
Privacy and anonymity on the blockchain are a crucial = part of its success in some applications.
If individuals or organizations are performing transac= tions on the blockchain, they may not wish this to be public knowledge.
Different blockchains have different levels of anonymi= ty and privacy built into the protocol.
As discussed earlier, public key cryptography is at the center of maintaining identity on the blockchain.
It uses a pair of public and private keys to make encr= yption and digital signatures possible.
At this point, we need to take a look a bit more into = the relationship between a user's keys and a user's actual identity.
The first thing to consider is that there is nothing a= bout a public key that ties it to its corresponding private key.
We've said that a digital signature verifies that an o= wner of the corresponding private key created the signature, but that is all tha= t it says.
Since private keys are secret, obviously it can't be possible for someone to determine a private key from a public key, at least= it shouldn't.
If you know a user's private key, you can calculate the public one, but the reverse is not true.
The other thing to keep in mind is that private keys a= re just numbers, and can't be tied to a person's actual identity, their real-w= orld identity.
Identity on the blockchain is just possession of the r= elevant private key, and even if someone guesses or steals that private key, they c= an't learn its owner's actual identity from it directly.
The original blockchains did not have much in the way = of privacy and anonymity protection.
You can't tie public keys to private keys or private k= eys to real-world identities, which means that blockchain users have a limited amo= unt of built-in privacy.
However, every transaction on the blockchain is public= and stored there forever.
This means that a lot of information about the users' identity could be learned through sifting through the data stored on the blockchain to obtain the metadata.
Based on the repeated transactions to places like a co= ffee shop or a market, someone could get an idea of where an individual lives and their habits.
For businesses, repeated transactions may indicate bus= iness relationships that may lead to a loss of a competitive advantage if leaked.=
On basic blockchains, anonymity only goes so far.
The limited level of anonymity and privacy protections available on the original blockchain has inspired development of enhancemen= ts that increase privacy, while still allowing transactions to be verified and validated publicly on the blockchain.
This is an incomplete list of some of the mechanisms developed and implemented in various blockchains.
We'll start with zero knowledge proofs.
They use cryptography and cryptographic algorithms to = allow a user to prove knowledge of a secret without revealing the actual secret.<= /p>
A common example of this type of proof includes a colo= rblind person and two objects identical except for the color.
The colorblind person shows one object to the prover, conceals both objects, and then shows one to the prover again.
The prover then says whether or not they are the same object.
Since the only way of determining this reliably is tha= t the objects are different colors, the prover can prove the difference in colors without revealing the color of either object.
Another approach is stealth addresses.
Stealth addresses involve using one-time addresses to perform transactions on the blockchain.
A stealth address is just a one-time address that make= s it impossible to link a transaction to a known account.
What this does is prevents the data mining attacks on privacy that we discussed earlier.
We mentioned previously that transactions are digitally signed .
With ring signatures, all that can be determined from a transaction is that a member of a group signed it, but not the particular member.
The ability to see who is performing transactions with= whom is dangerous to user privacy and anonymity.
Protocols like CoinJoin mix several transactions toget= her, so that it is difficult to pair senders with recipients.
Confidential transactions take advantage of homomorphic encryption, which makes it possible to perform mathematical operations on encrypted data.
This means that the data contained in a transaction ca= n be hidden from the public, while still allowing the network to verify that the transaction is valid.
Now, let's discuss how different blockchains implement= the various privacy and anonymity mechanisms available.
We start with the Ethereum.
Ethereum does not currently implement many real advanc= ed options for privacy or and/or anonymity.
In the current version, user anonymity is limited to t= he fact that no one can tie a public key to a real-world identity.
This is intended to change in the future though, and t= he Ethereum roadmap currently includes laying the groundwork for implementing = zero knowledge proof.
Hyperledger (Fabric) provides several options for priv= acy and anonymity.
At the lowest levels, users can achieve increased anon= ymity through channels which can further encrypt the data that's stored on the channel using keys only available to members of the channel.
At the next level, Hyperledger Fabric also allows user= s to perform private transactions.
In a private transaction, data is stored on the cloud,= but the hash of the data is stored on the blockchain.
This allows users to use the blockchain to ensure data authenticity without storing the actual data publicly on the blockchain.
Finally, Hyperledger supports zero knowledge proof, wh= ere a prover can demonstrate possession of some data without revealing the data itself.
These different levels of privacy and anonymity protec= tion gives users a higher degree of configurability on the Hyperledger Fabric blockchain.
Finally, Corda allows users to perform transactions ei= ther as a party or an anonymous party on their blockchain.
An anonymous party has the same level of anonymity pro= tection as a basic blockchain, relying on the fact that public keys cannot be tied directly to real-world identities.
A party on the Corda blockchain reveals the real-world identity of the user which intentionally sacrifices anonymity for identity validation.
The following are
only some of the mechanisms developed and implemented in various blockchain=
s:
·&nb=
sp;
Zero-knowledge
proofs
Zero-knowledge
proofs use cryptographic algorithms to allow a user to prove knowledge of a
secret without revealing the secret. A prover proves knowledge of a secret
without revealing it. New technology refe=
rred
to as SNARK (Succinct Non-interactive - ARgument of Knowledge) are fine tun=
ing
privacy issues on blockchains.
·&nb=
sp;
Stealth addre=
sses
Stealth addre=
sses
involve using one-time addresses to perform transactions on a blockchain. A
stealth address is just a one-time address that makes it impossible to link a
transaction to a known account. This prevents the data mining attacks on
privacy that we discussed earlier.
·&nb=
sp;
Ring signatur=
es
We mentioned
previously that transactions are digitally signed. With ring signatures, all
that can be determined from a transaction is that a member of a group signed
it, but not the
particular member.
·&nb=
sp;
CoinJoin
The ability t=
o see who is
performing transactions with whom is dangerous to user privacy and anonymit=
y.
Protocols like CoinJoin mix several transactions together so that it is
difficult to pair senders with recipients.
·&nb=
sp;
Confidential
transactions
Confidential<=
span
style=3D'mso-style-textoutline-type:none;mso-style-textoutline-outlinestyle=
-dpiwidth:
0pt;mso-style-textoutline-outlinestyle-linecap:round;mso-style-textoutline-=
outlinestyle-join:
bevel;mso-style-textoutline-outlinestyle-pctmiterlimit:0%;mso-style-textout=
line-outlinestyle-dash:
solid;mso-style-textoutline-outlinestyle-align:center;mso-style-textoutline=
-outlinestyle-compound:
simple;mso-effects-shadow-color:black;mso-effects-shadow-alpha:100.0%;
mso-effects-shadow-dpiradius:0pt;mso-effects-shadow-dpidistance:0pt;mso-eff=
ects-shadow-angledirection:
0;mso-effects-shadow-align:none;mso-effects-shadow-pctsx:0%;mso-effects-sha=
dow-pctsy:
0%;mso-effects-shadow-anglekx:0;mso-effects-shadow-angleky:0'> transactions
take advantage of homomorphic encryption, which makes it possible to perform
mathematical operations on encrypted data. This means that the data contain=
ed
in a transaction can be hidden from the public, while still allowing the
network to verify that the
transaction is valid.
·&nb=
sp;
Ethereum
Ethereum is w=
orking on improvi=
ng
the zero-knowledge proofs, mixing and DAPPS (applications developed to impr=
ove
anonymity) to strengthen privacy. Also ConsenSys, the Enterprise Solutions
builder for Ethereum introduced QUORUM, a fork of the Ethereum blockchain w=
hich
enables users to
benefit from the public Ethereum blockchain while enjoying features from a
private network. Developed by JPMorgan, it is a permissioned implementation=
.
·&nb=
sp;
Hyperledger
- Channels:
Subsections of the blockchain
that make transactions visible only to members.
- Private
transactions: Hashes of private data are stored to publicly verify it on the
blockchain.
- Zero-knowle=
dge
technology: One can demonstrate knowledge of a secret without revealing the=
secret itself.=
·&nb=
sp;
Hyperledger B=
esu
Besu is an
Ethereum client that runs on the Ethereum public network, private networks,=
and
test networks such as Rinkeby, Ropsten, and Görli. Hyperledger Besu includes
several consensus
algorithms including PoW, PoA, and IBFT, and has comprehensive permissioning
schemes designed specifically for uses in a consortium environment.<=
/span>
·&nb=
sp;
Corda
Parties on the
Corda Network can be represented in
one of two ways:
- Party: A pu=
blic
key and name.
- Anonymous
party: Only a public key.
Just as there=
are
benefits with blockchain technology, there are also some challenges. Blockc=
hain
is a culmination of technologies that have been blended to provide a
trustless platform. Expect some challenges and use case justifications taki=
ng
the old line of business apps to the blockchain.
Let's recap t=
he
features of a blockchain that establishes trust:
·&nb=
sp;
Blockchain
technology is about storing some kind of data (which are transactions in
regards to the Bitcoin blockchain).
·&nb=
sp;
Blockchain is
essentially transferring trust from an intermediary to technology.=
span>
·&nb=
sp;
Storing data =
in
the blockchain is through cryptographic functions.
·&nb=
sp;
Private
key/public key.
·&nb=
sp;
Collaboration
through consensus.
All transacti=
on
data on a chained block is assumed to be trustworthy.
The users base
this trust on the fact that:
·&nb=
sp;
This data has=
not
been tampered with.
·&nb=
sp;
The blockchai=
n is
immutable.
Blockchains
minimize the amount of trust required from any single actor in the system. =
They
do this by distributing trust among different actors in the blockchain as d=
efined by the
consensus protocols.
Blockchains h=
ave
a shared ledger =
that
gives us the absolute truth of the state of the system. It uses mathematics,
economics, and game theory to incentivize all parties in the system to reac=
h a
“consensus” (i.e. coming to an agreement on a single state of the ledger).<=
/span>
·&nb=
sp;
Consensus
algorithms
The blockchai=
n is
based on a consensus algorithm wh=
ere
all nodes agree that the transaction is valid.<=
span
style=3D'mso-style-textoutline-type:none;mso-style-textoutline-outlinestyle=
-dpiwidth:
0pt;mso-style-textoutline-outlinestyle-linecap:round;mso-style-textoutline-=
outlinestyle-join:
bevel;mso-style-textoutline-outlinestyle-pctmiterlimit:0%;mso-style-textout=
line-outlinestyle-dash:
solid;mso-style-textoutline-outlinestyle-align:center;mso-style-textoutline=
-outlinestyle-compound:
simple;mso-effects-shadow-color:black;mso-effects-shadow-alpha:100.0%;
mso-effects-shadow-dpiradius:0pt;mso-effects-shadow-dpidistance:0pt;mso-eff=
ects-shadow-angledirection:
0;mso-effects-shadow-align:none;mso-effects-shadow-pctsx:0%;mso-effects-sha=
dow-pctsy:
0%;mso-effects-shadow-anglekx:0;mso-effects-shadow-angleky:0'>
·&nb=
sp;
Financial
transparency
Financial
transparency can reduce the need for intermediaries.
·&nb=
sp;
Smart contrac=
ts
Smart contrac=
ts
reduce the need for accountants, lawyers, bankers, etc., as computer code c=
an
replace some basic functions. Trust shifts to technology.
·&nb=
sp;
Trust in
technology
Trustless
blockchains is a transfer of trust to technology from organizations, governme=
nts
and corporations.
·&nb=
sp;
Confidential =
transactions
Privacy
techniques mask details of transactions while still proving they occurred.<=
/span>
·&nb=
sp;
Decentralized
ledger
The ledger ac=
ts
as a trust broker when two parties who don’t trust each other want to inter=
act.
·&nb=
sp;
Transparent c=
ode
Most blockcha=
ins
are built on open-source software that is transparent, community-driven code
that is open for comment.
In this chapt=
er,
we discussed:
·&nb=
sp;
Open source
communities and blockchain source code.
·&nb=
sp;
Governance mo=
dels
for blockchain and who is really in charge.
·&nb=
sp;
How a blockch=
ain
is “trustless”.
·&nb=
sp;
Why a trustle=
ss
system is more secure than a system that requires trust.
·&nb=
sp;
Why anonymity=
is
required in public blockchains.
·&nb=
sp;
How
private/public key cryptography provides anonymity.
Now that we
understand the basics of how blockchain works, Chapter 5 will discuss the
problems blockchain can solve. We will discuss the concept of immutability and how
the append only blockchain brings new trust in shared information. Next, we
will take what we learned about smart contracts to see how they are bringing
autonomy to systems that previously required human interaction. We will dis=
cuss
the double-spend issue
and how blockchain can solve for it. We will also discuss some popular
cryptocurrencies.
Next, we will
discuss the new business trends blockchain makes possible. First, we will
discuss the way we manage our identity and information on the Internet and =
how
decentralized identity solutions rooted on a
blockchain are fixing what is broken. Next, we will discuss how blockchain =
is
revolutionizing the financial markets by autonomous market solutions that
remove middlemen and open markets up to previously excluded clients. We will
also join in the conversation ar=
ound
Central Bank Digital currencies and how enacting blockchain solutions can
streamline the government's monetary policies.<=
span
style=3D'mso-style-textoutline-type:none;mso-style-textoutline-outlinestyle=
-dpiwidth:
0pt;mso-style-textoutline-outlinestyle-linecap:round;mso-style-textoutline-=
outlinestyle-join:
bevel;mso-style-textoutline-outlinestyle-pctmiterlimit:0%;mso-style-textout=
line-outlinestyle-dash:
solid;mso-style-textoutline-outlinestyle-align:center;mso-style-textoutline=
-outlinestyle-compound:
simple;mso-effects-shadow-color:black;mso-effects-shadow-alpha:100.0%;
mso-effects-shadow-dpiradius:0pt;mso-effects-shadow-dpidistance:0pt;mso-eff=
ects-shadow-angledirection:
0;mso-effects-shadow-align:none;mso-effects-shadow-pctsx:0%;mso-effects-sha=
dow-pctsy:
0%;mso-effects-shadow-anglekx:0;mso-effects-shadow-angleky:0'>
Finally, we w=
ill
discuss the energized world of NFT’s (non-fungible tokens) and how owning
unique rights to everything from music, sports collectables and even “captu=
red moments” is
turning the collectable world upside down. We end the chapter with a brief
discussion on interoperability. In order for this new technology to take ho=
ld,
blockchains need to be able to communicate and transfer value amongst
themselves.
By the end of
this chapter, you should be able to:
·&nb=
sp;
Discuss
immutability in blockchains.
·&nb=
sp;
Explain what
transparency is and review advantages and disadvantages of append-only ledg=
ers.
·&nb=
sp;
Explain how
blockchain is looking to be autonomous through smart contracts.
·&nb=
sp;
Discuss how
blockchain removes third party intermediaries.
·&nb=
sp;
Discuss how
blockchain solves the problem of double spending.
·&nb=
sp;
Distinguish
between traditional database vs. blockchain immutability.
·&nb=
sp;
Discuss centr=
al
bank digital currencies and how they operate.
·&nb=
sp;
Explain ident=
ity
management on a blockchain.
·&nb=
sp;
Discuss
decentralized finance and the implications for the financial industry.
·&nb=
sp;
Examine Centr=
al
Bank Digital Currencies (CBDC).
·&nb=
sp;
Discuss
non-fungible tokens and how they will impact society.
·&nb=
sp;
Examine the
importance of interoperability for blockchains.
Immutability is when something is unable to be changed.
"Immutable" simply refers to the permanence = of data.
Anything we call "immutable" we understand t= o be permanent and unchanging.
Your local weather forecast - that's mutable, it chang= es all the time; the stars in the sky, those are immutable, they seem permanent fr= om our perspective.
One of the benefits of blockchain and many other Web 3= .0 technologies is the promise of immutability.
The data recorded on a blockchain system can never be altered, edited, changed, or deleted once it has been recorded.
As this data is stored in many different locations, ch= anging or removing a copy of the data in one single place, or in a limited number = of places poses no threat.
Blockchain goes further than this though.
In addition to recording facts or data points, blockch= ain also has the capacity to record who endorses or agrees with those recorded facts.
Think of the difference between a piece of paper, and a contract.
A piece of paper can contain any data, true or not.
A signed contract becomes more than a piece of paper b= ecause those signatures represent who agreed with the facts recorded on the paper = at the time of signing.
Blockchain provides a digital implementation of t= his process, and can be an immeasurably valuable tool when you need to cap= ture not only what happened, but who was involved as well.
Imagine the new opportunities that arise when organizations can safely and securely share their most critical data with o= ne another, with the trust that the data they're seeing hasn't been compromise= d or altered.
The very natu=
re
of centrally-operated databases can’t be
completely immutable, but that’s the case for blockchain as well. A
centrally-run database can embed things into it with features that mention
immutability (unchangeable). But if there is a central authority, they have=
all
the ability in the world to overr=
ide
that feature.
Another point=
to
keep in mind is t=
hat
immutability has been around for many years, just like the majority of the =
tech
used via blockchain; it is the combination of these that makes it unique.=
span>
Let's review =
the
aspects of the public blockchain that improve the chances of it being
immutable.
There are many
different variables, but the main one is consensus. In a blockchain, it ref=
ers
to the logs of
transactions which are created by consensus among the chain’s participants.=
The
basic notion is that once a blockchain transaction has received a sufficient
level of validation and posted on the chain, it can almost never be replace=
d,
reversed or edited.<=
/span>
If all the no=
des
within the network (Bitcoin
specifically) are working to solve a really hard math problem by running ma=
ny
computers simultaneously, the chances of anyone overriding that are slim to
zero.
But, if someo=
ne
wanted to undermine the immutability of the Bitcoin blockchain, here’s how =
they
would do it:
·&nb=
sp;
First, they w=
ould
install more mining capacity than the rest of the network put together, creating=
a
so-called “51% attack”.
·&nb=
sp;
Second, inst<=
span
style=3D'mso-style-textoutline-type:none;mso-style-textoutline-outlinestyle=
-dpiwidth:
0pt;mso-style-textoutline-outlinestyle-linecap:round;mso-style-textoutline-=
outlinestyle-join:
bevel;mso-style-textoutline-outlinestyle-pctmiterlimit:0%;mso-style-textout=
line-outlinestyle-dash:
solid;mso-style-textoutline-outlinestyle-align:center;mso-style-textoutline=
-outlinestyle-compound:
simple;mso-effects-shadow-color:black;mso-effects-shadow-alpha:100.0%;
mso-effects-shadow-dpiradius:0pt;mso-effects-shadow-dpidistance:0pt;mso-eff=
ects-shadow-angledirection:
0;mso-effects-shadow-align:none;mso-effects-shadow-pctsx:0%;mso-effects-sha=
dow-pctsy:
0%;mso-effects-shadow-anglekx:0;mso-effects-shadow-angleky:0'>ead of openly
participating in the mining process, they would mine their own “secret
branch", containing whichever transactions they approve and censoring =
the
rest.
·&nb=
sp;
Finally, when=
the
desired amount of time has passed, they would anonymously broadcast their
secret branch to the network.
Since the
attacker has more mining power than the rest of the network, their branch w=
ill
contain more Proof of Work than the public one. Every Bitcoin node will theref=
ore
switch over since the rules of Bitcoin state that the more difficult branch
wins. Any previously confirmed transactions not in the secret branch will be
reversed and the Bitcoin they spent could be sent elsewhere. The computing
power required to achieve
this is enormous and probably only theoretical, but it’s important to consi=
der.
One other less
technical and malicious example would be from the Ethereum hard fork that
directly happened after the DAO hack. In this example, the majority of the
Ethereum nodes in the network decided to update the software
preventing those hackers from withdrawing the cryptocurrency “earned” (stol=
en).
This update could not be enforced, since every Ethereum user controls their=
own
computer. Nonetheless, it was publicly supported by Vitalik Buterin, Ethere=
um’s
founder, as well =
as
many other community leaders. As a result, most users complied, and the
blockchain with the new rules kept the name "Ethereum". A minority
disagreed with the change and continued the blockchain according to its
original rules, earning the title
"Ethereum Classic".
Anything that is see-= through, where there is very little fog or obstruction in the way. Just like immutability, transparency comes on a spectrum. Certain things are more transparent than others. In the context of business/technology, this can be seen as a way of operating that is easy for others to see what actions are being performed.
For example, open sou= rce projects where all the source code is available for the masses.
Before we jump
into how blockchain technology can be seen as transparent in certain aspect=
s,
let’s review the traditional CRUD method used by most databases.
=
In a traditio=
nal
database, a client can perform four functions on data: <=
i>create=
, read=
span>, update=
, delete=
. In a
traditional database, there is usually an administrator, the authority giv=
er
who allows certain known participants in the database to do more than
read/create; it allows them to update (change) and/or delete.=
Due to the fa=
ct
that the administrator is controlling who has access and who doesn’t, it’s
easier to track these changes and prevent actors from tampering. In the public
blockchain world, this isn’t necessarily the case.
Within the public blockchain world, every full node on=
the
network is its own administrator, where it can create (e.g. add) and read; =
this
is also known as read/write access (e.g. append-only). These nodes only add
more data over time in the form of blocks, but all previous data is permane=
ntly
stored and cannot be altered.
Read: query (e.g. search) and retrieve data from the blockchain.
Write: add more data onto the blockchain.
As explained in the "Blockchains vs. Traditional Databases"= article by Shaan Ray,
&qu= ot;(...) if the blockchain has recorded that my Bitcoin wallet has 1 million BTC, th= at figure is permanently stored in the blockchain. When I spend 200,000 BTC, t= hat transaction is recorded onto the blockchain, bringing my balance to 800,000 BTC. However, since the blockchain can only be appended, my pre-transaction balance of 1 million BTC also remains on the blockchain permanently, for th= ose who care to look. This is why the blockchain is often referred to as an immutable and distributed ledger".
Independence =
or
freedom, the ability to make your
own decisions without being controlled by anyone else. This sense of freedom
can be at the macro level of a country or at the micro level of a person.=
span>
=
As children a=
nd
adults, we all want a little autonomy in our lives, careers, or relationshi=
ps,
but it’s just a matter of how much autonomy one truly wants and can handle.=
The blockchain
world is looking to solve all of this complexity with autonomy from
intermediaries via automated smart contracts. In the traditional world of d=
oing
any kind of transaction with another party, there tends to be a lot=
of
administrative paperwork, with third parties intervening every step of the =
way.
Some of this is needed, but most of it becomes wasted time and effort which
could be spent elsewhere.
Depending on =
how
complex a transaction is between two parties, designated specialists can ma=
ke
the process more efficient. Many players are involved in the proces=
s,
from contract drafters, signatories, and regulators. If a dispute over the
contract occurs, many parties can be involved, including the courts.=
This complexi=
ty
can be seen within many areas of life. Take a moment to dissect the backend=
of
certain services or products you use and this concept will become
exposed very quickly.
Autonomy in t=
he
blockchain world can be seen from many different angles. We are going to fo=
cus
solely on smart contracts in this section, due to the amount of autonomy
they provide everyone involved. The concept of smart contracts has been aro=
und
for a long time and was first proposed by Nick Szabo, who coined the term in
1994.
The most
simplified explanation is:
"IF THEN
ELSE" statement, which means IF X happens, THEN do Y, ELSE do Z.
Take this con=
cept
and apply it to two or more parties, all interacting on a mutually agreed u=
pon
contract that executes based on their
actions (or non-actions). An example of a smart contract could be,=
span>
"if this
happens before the end of the year, then you pay me, else I pay you".<=
/span>
These
"smart" contracts aren’t very smart, at least for now. That’s due=
to
the simple explanation above because these contracts are "=
;if,
then, else" statements, which can vary in complexity based on how they=
’re
stacked.
At the present
moment, they can't make decisions without human intervention, or AI, which =
is a
highly debated topic at the moment by many neuroscientists/philosophers.
Companies are emerging as reliable Oracles that filter in
real world facts to the blockchain. An Oracle is defined as a reliable sour=
ce
of information and blockchain makes that information immutable.
Anyone is abl=
e to
create their own smart contracts without a central authority giving the rig=
ht
to do so. These contracts are executed without too much human
intervention, and they’re stored on blockchain technology which provides a
sense of permanence. These are three of the main attributes that can bring =
more
autonomy to exchanging information between parties. Setting up a pre-agreed
upon contract that’s coded into a
blockchain and executes automatically when certain actions are taken is one
step in the direction of not only improving our autonomy as individuals or
companies, but shifting wasted resources (middle men/women) toward more
impactful work.
The first generation of blockchain platforms, collecti= vely known as the "Blockchain 1.0" networks, were capable of capturing= and recording data, but not acting upon it.
Bitcoin, the world's first mass-scale blockchain, was designed to capture and record the transfer of Bitcoin from one owner to the next.
At the time, nobody was envisioning blockchain as a pl= atform on top of which applications and solutions could be built.
The release of Ethereum in 2015 changed this model. "Blockchain 2.0" was born, and now blockchain networks could not = only capture data, they could act upon it as well.
All of this was made possible by the introduction of a technology called "Smart Contracts".
Put quite simply, a Smart Contract is some computer co= de deployed to a blockchain network.
Users can transact with the Smart Contract just as they would another user, except when transacting with a Smart Contract, the rules defined in the code are used to process the transaction.
This advancement now allows blockchain solutions to ma= nage and automate processes, and record their results on a permanent, immutable, secure ledger shared with all relevant parties.
Consider the sale of a used car. Alice lists her car f= or sale, and offers a guarantee to any buyer that the car will be trouble-free= for 1,000 miles. Bob looks at Alice's car and makes her an offer of $5,000.
Alice and Bob agree that Alice will take half the purc= hase price now ($2,500), and the other half if the car has had no major issues in the first 1,000 miles of Bob's ownership.
A Smart Contract could be created between Alice and Bo= b.
The Smart Contract would hold the remaining $2,500 in escrow, and if Bob had an issue with the car, he would report it to the Sma= rt Contract. After 1,000 miles the Smart Contract will determine how much of t= he remaining funds are due to Alice and how much should be returned to Bob usi= ng the rules Alice and Bob initially agreed upon.
All details about the transaction would be recorded on= a permanent, decentralized ledger which could be used at any point in the fut= ure to answer any questions about the transaction between Alice and Bob.
In our current
world of transactions, there’s always a third party to assist with connecti=
ng
the sender and receiver. This has always been the most efficient way to move
something from Point A to Point B. But with a third party making t=
he
connection comes the need to trust that they’ll get whatever is being sent =
in
an efficient, economical, and effective way. This trust is open to human and
process error. But we’ve discovered through experimentation that certain use
cases could be automa=
ted
via smart contracts.
=
One example is
cross-border payments. Sending money from one country (border) to another
country (different borde=
r).
The major issue with how this is traditionally done today (e.g. corresponde=
nt
banking) is that certain transactions end up stopping off at 7–10 different
checkpoint banks. This constant stopping is making the money movement more
expensive (each bank ta=
kes
a fee), slower, and less reliable (sometimes it might never make it). This =
type
of transaction is heavily reliant upon third parties to facilitate the move=
ment
of information and money.
Blockchain
technology has been shown to provide many benefits, but one of the most
prominent and immediate benefits is removing middlemen (third parties) from=
a
variety of processes. There is a long list of examples for middlemen curren=
tly
being removed, such as:
·&nb=
sp;
Energy
distributors
·&nb=
sp;
Payment netwo=
rks
(Visa and Mastercard)
·&nb=
sp;
Content
distributors (YouTube, Facebook, Medium, etc.)
·&nb=
sp;
Central excha=
nges
(NASDAQ, London Stock Exchange, NYSE, etc.)
·&nb=
sp;
Cloud database
providers (AWS, Azure, etc.).
How is the
blockchain world removing this middleman? The answ=
er
is all around trust. Within the public blockchain world, where everyone is
theoretically anonymous, there needs to be trust so we’re able to exchange
valuable things without the concern of bad actors. Trust is built into the
consensus mechanism that we’=
ve
mentioned multiple times throughout this course. This incentivizes all the
participants to help secure and validate good actions throughout the networ=
k.
With that built-in "trustless" trust, we’re able to remove those
middlemen that provide no additional
value, plus it could potentially increase the efficiency based on which pub=
lic
blockchain is being used.
Traditional
centralized ledger systems have weaknesses. Accuracy is dependent on interm=
ediaries who c=
an
change details of the centralized ledger. Data derived from the ledger is
siloed and misused.
Distributed
decentralized ledgers are not dependent on intermediaries who can manipulate
the data. Data is secure and tamper resistant.
Bitcoin, the world's first blockchain, was created as = part of an attempt to create the world's first truly viable digital currency.
Bitcoin was not the first attempt to create a digital currency, but it was the first which was able to successfully solve a long-standing problem - the "Double Spend" problem.
The Double Spend problem is quite simple.
Let's say Alice owes a debt of $5 to both Bob and Caro= l.
Alice's total debt is $10, but let's assume she only h= as $5 currently.
If Alice's transactions were recorded on two separate ledgers, it is possible that one ledger would show she paid $5 to Bob, while the second ledger may show she paid $5 to Carol.
It would be impossible to tell who actually got paid.<= /p>
This is the double spend problem - any financial ledge= r MUST prevent Alice from spending her $5 more than once.
Digital assets are particularly vulnerable to the doub= le spend problem as we generally design them to be easy to copy and distribute= .
If you've got a great picture you took with your phone= , it's easy to post one copy to
Facebook, another copy to Instagram, then you might te= xt a copy to your spouse, and email a copy to your parents.
We live in a world where digital assets are easy to co= py and distribute, by design.
A digital currency should NOT be easy to copy and dist= ribute though.
It was overcoming this technical challenge that lead t= o so many failed attempts at digital currency before Bitcoin, and the innovations that the solution to this problem has delivered are now being leveraged to track and manage many different types of assets and data that we never could easily manage before.
It is this possibility of building tools and solutions= that were never before thought possible that has so many people excited about the blockchain revolution!
Back in the e=
arly
1990’s, developers,
cryptographers, and different groups of people were trying to solve the
double-spend problem as it related to digital cash, previously known also as
electronic cash. Double spending within Bitcoin is the act of using the same
bitcoins (digital money files) mo=
re
than once.
If I buy an a=
pple
for $1, I cannot spend that same $1 to buy an orange. If I could, money wou=
ld
be worthless since everyone would have unlimited amounts and the scarci=
ty
that gives the currency value would disappear. The network protects against
double-spending by verifying each recorded transaction within the blockchain
utilizing a consensus mechanism (explained in the previous section).=
Bitcoin was t=
he
first decentralized protocol to solve this problem and now more
protocols are following, such as: Proof of Stake (PoS), Delegated Proof of
Stake (DPoS), Directed Acyclic Graphs (DAG) structures, Proof of Authority
(PoA), etc.
Today, when someone mentions digital currency, usually
Bitcoin or crypto is the first thing that comes to mind, but digital curren=
cy
had a long history before Bitcoin popularized it. This history goes all the=
way
back to 1983, when David Chaum introduced the idea of digital c=
ash
in a research paper. Then, in 1992, he founded DigiCash, an electronic cash
company, which eventually went bankrupt in 1998 due to adoption (buyout by
another financial institution). Today, David is a leading pioneer of blockc=
hain
companies such as Elixxir=
span> and Praxxis to provide sc=
alable
digital sovereignty.
There were many other attempts to create digital cash = over the years, but many failed due to a variety of reasons, such as:
Other attempts
include:
·&nb=
sp;
CyberCash in =
1994
(failed after the Y2K bug of 2000).
·&nb=
sp;
E-gold in 1996
(sunk by continuous money laundering, hacking, and extortion).
·&nb=
sp;
Liberty Reser=
ve
in 2006 (shut down in 2013 due to this becoming a great hangout spot for
cybercriminals).
Digital currencies are available only in the digital world and not in the physical world. They can= be defined as any currency, money, or money-like asset that is primarily manag= ed, stored or exchanged on computer systems. Examples of digital currencies inc= lude cryptocurrency, virtual currency and central bank digital currency.<= /p>
According to Investopedia,
&qu= ot;A cryptocurrency, broadly defined, is currency that takes the form of tokens = or “coins” and exists on a distributed and decentralized electronic ledger. Wh= ile a large majority remain completely intangible, some cryptocurrencies have ventured into the physical world by building associations with companies offering traditional payment rails (credit cards and payment processors)&qu= ot;.
To break down the crypto markets, let's start with some
basic definitions.
A cryptocurrency wallet is an application on your comp= uter or smart phone that connects you to a blockchain where you can trade cryptocurrencies. A Bitcoin wallet allows you to trade Bitcoin, an Ethereum wallet accommodates Ether. You can not send Bitcoin to the Ethereum blockch= ain, each cryptocurrency must transact on its own blockchain.
Some wallets allow you to hold multiple cryptocurrenci= es in the same application. In these wallets, each cryptocurrency will have its o= wn balance. To initiate a transaction, the application will create a cryptographically secure address (specific for the particular blockchain). = This address acts as your account number and lets you send and receive the crypt= ocurrency.
Atomic Swaps
Additional features i=
n these
wallets lets you “swap” one cryptocurrency for another. The application
provider acts as the intermediary to secure the transactions from one chain=
to
the other.
Metamask
ConsenSys, spearheaded by Joe Lubin, an early Ethereum programmer, is a software engineering company that helps developers build next-generation networks and enable enterprises to launch more powerful financial infrastru= cture. Consensys Mesh is a playground for entrepreneurs and programmers to build decentralized platfor= ms and projects, Metamask is just one project to come out of the efforts at Consensys.
One example of how the Metamask wallet is used is with the CryptoKittes project. CryptoKitties are one of the first examples of a digital collectible w= here you own the rights (private keys) to code that represents a unique kitten. A kitten is a set of identifiers built or “bred” by a smart contract to be on= e of a kind. In order to purchase, view or interact with a digital kitten you mu= st open your Metamask wallet and connect it to the cryptokitties.co websi= te.
Kittens purchased on the cryptokitties.co site will be stored in the Metamask wallet associated with your account or can be put up= for sale at an NFT marketplace. Any fees or revenue from your kittens will automatically be reflected in your Metamask wallet totals. Cryptokitties are the first example of a non-fungible token which we will cover in the next section.
Exchanges=
Cryptocurrency exchan=
ges vary
in complexities and user experience.
Beginners
To start off, it is advantageous to deal with a centralized solution to sto=
re
your cryptocurrency. These larger exchanges act as a bank for your
cryptocurrencies. Offering features like loans and staking rewards (rewards=
for
being an active part in a network).They vet the currencies they allow you to
trade and store, while controlling the private keys for you, so accessing y=
our
currencies is as easy as a username and password. Such examples of these
organizations are Coinbase an=
d Gemini. Below you can see a screenshot of the Gemini Custodial Crypto Account Dashboard:
Advanced
In keeping with the decentralization nature of the cryptocurrency
markets, exchanges exist where you are the custodian of your accounts and
trading is done from your computer or smartphone. This is where the term
Decentralized Finance was born. It gives you the ability to apply smart
contracts to govern your trades and access to markets previously only for
accredited investors. Such examples of decentralized exchanges are Liquid, SushiSwap and Uniswap. Below is the screenshot of the =
;Liquid Exchange<=
span
style=3D'font-size:14.0pt;mso-bidi-font-size:13.5pt;font-family:"Inter",san=
s-serif;
color:#454545'>:
Hardware Wallets=
span>
Hardware wallets offe=
r an
alternative to storing your cryptocurrency online. These devices plug into a
USB port and transfer your private keys (ownership rights to the
cryptocurrency) from your “hot wallet” (mobile, computer or web based) to be
stored offline. If the device is damaged or lost, so are the cryptocurrenci=
es
stored. This is what the ledger wallet&nb=
sp;looks
like:
As explained by Drummo=
nd
Reed,
&qu= ot;Web 1.0 used centralized identity; Web 2.0 graduated to federated identity; now= Web 3.0 is using decentralized digital identity, a model known as "self-sovereign identity" or "SSI" because now individu= als control their own portable digital identity credentials in their own digital wallets—just like we prove our identity with physical credentials from our physical wallets every day. The digital signatures on these credentials use blockchain technology for decentralized public key management. Finally we c= an have a trust layer for the Internet that doesn't require everyone to rely on centralized authorities".
The concept of self-sovereign identity (SSI) is based = on the idea that the Internet was created without a way to properly deal with identifying participants. Innovative minds, such as Drummond Reed and Alex Preukscha, have been working on solutions to this problem. We will start wi= th some key terms taken from the "Self-Sovereign Identity: Decentralized Digital Identity and Verifiable Credentials" book by Reed and Preukscha.
The Internet was designed to identify computers, not u= sers. The result is a tangled web of passwords, and usernames, and siloed data th= at is bought and sold without our consent. With blockchain and cryptographic techniques, solutions are being developed to fix what is broken with identi= ty and the Internet. The W3C Consortium is an international community where members work together to develop web standards. Led by web inventor a= nd Director Tim Berners-Lee and CEO Jeffrey Jaffe, W3C's mission is to lead the Web to its full potential. W3C is working on standards that can be used to define a new paradigm for the Int= ernet and Ide= ntity.
Self-sovereign identity (SSI)
SSI is relatively new=
, having
only emerged onto the Internet stage in 2016. At one level, SSI is a set of
principles about how identity and personal data control should work across
digital networks. At another level, SSI is a set of technologies which build
upon core concepts in identity management, distributed computing, blockchai=
n or
Distributed Ledger Technology (DLT), and cryptography.
Verifiable credentials
The essence of decent=
ralized
identity is transitioning physical identity credentials (birth certificate,
driver licenses, passports, college degrees, medical records, etc.) to a
digital twin that the individual can possess in a digital wallet.
Verifier
A verifier is the per=
son,
organization or computer program granting verification of an assertion. They
request proof that a claim or statement about a credential is true.
Issuers
Issuers are the sourc=
e of
credentials—every credential has an issuer. Most issuers are organizations =
such
as government agencies (passports), financial institutions (credit cards), =
universities
(degrees), corporations (employment credentials), NGOs (membership cards), =
or
churches (awards).
Holders/Provers
Providers request ver=
ifiable
credentials from issuers, hold them in the holder’s digital wallet (below),=
and
present proofs of claims from one or more credentials when requested by
verifiers (and approved by the holder). Although we most commonly think of
individuals as holders/provers, holders/provers can also be organizations u=
sing
enterprise wallets, or things in the sense of the Internet of Things (IoT).=
The
trust triangle represents the Trust over IP version of how the new relation=
ship
will operate.
Decentralized identifiers=
According to the WC3,=
decentralized identifiers (DIDs)
are a new type of identifier for verifiable, decentralized digital identity
credentials. These new identifiers are designed to enable the controller of=
a
DID to prove control over it and to be implemented independently of any
centralized registry, identity provider, or certificate authority. WC3 is
working on ways to standardize the format for DIDs.
The DID above is stru=
ctured
to identify what type of credential, the issuer and the cryptographic hash =
of
the credential.
The Sovrin Foundation and Everynym are leading pioneers in this new emerging =
sector
offering identity solutions in sectors such as Healthcare and Refugee
Management.
According to "The Complete Beginner's Guide to Decentralized Finance
(DeFi)" article by Binance Academy, Decentralized
Finance or DeFI refers to a system of financial software that enables finan=
cial
products to be made available to the public on decentralized blockchains. A=
s we
have learned, the term decentralized and its ramifications will revolutioni=
ze
how we interact with each other. These new interactions can have different
effects in various sectors. In the financial markets, new interactions will
dramatically change the current structure by eliminating the need for
intermediaries. Banks, lending institutions, Money Managers, Market Analyst=
s,
Hedge Fund Managers, and other positions and functions can now be performed
using smart contracts.
With new technology platforms, open source projects are fueled by blockchains, incentive models, stablecoins, smart contracts and s= elf hosted wallets that remove financial middlemen. Users' funds that are pooled together for investment advantages are now managed by a series of smart contracts that execute programmed financial trades instead of a third party= .
Along with the
new decentralized financial model come new
innovations that have far reaching ramifications. Microloans, smaller loans
made from pools of capital, now are available granting access to these
financial vehicles to participants previously excluded. For example, in
agriculture, farmers are able to secure sma=
ll
loans to help them get crops to market.
=
Regulating th=
ese
new financial instruments is proving challenging as government agencies wrestle
with controlling currencies that do not recognize borders. And have a steep
learning curve. A stable price coupled with the benefits of blockchain, new
financial markets are emerging that will change the current financial marke=
ts
making them more inclusi=
ve.
Enterprise blockchain solutions are successfully creat=
ing
efficient micro-economies that are decentralized, immutable and efficient. =
The
success of these projects are forcing governments to take a look at blockch=
ain
technology through the lens of streamlining current financial systems. More
specifically, studying how blockchain can improve the way governments handle
their central banking systems.
Central Bank Digital currencies are a digital form of central bank money that is issued by the central bank as part of its overall monetary policy. In the Ledger Insights article titled "IMF Outlines Pros and Cons of Central Bank Digital Currency" it is estimated that 80% of central banks are exploring CBDC.
Some of the benefits of Central Bank Digital Currencies include:
·
Transparent monetary policy
Due to the distributed ledger technology’s feature of transparency, creatin=
g a
digital currency will bring clarity to the government's monetary system, wh=
ere
policy can be recorded on the blockchain and remain immutable.
·
Combat money laundering
Money laundering is converting illegal funds into legal payments systems.
Blockchain can eliminate this practice with a shared ledger that keeps a
complete transaction history, making it impossible to erase. Like with all
money transfers, certain safeguards are in place to identify wallets or
accounts to users. Anti Money Laundering (AML) policies like Know Your Cust=
omer
(KYC) further ensure citizens are following laws in their countries.
·
Cross-border payments
Blockchain technology eliminates middlemen in cross-border payments, reduci=
ng
transfer fees, and making interactions faster and frictionless while keeping
the integrity of the underlying asset.
·
Government efficiency
A huge benefit for governments to research CBDC is to overcome existing
problems inherent in the existing antiquated systems. By moving to the digi=
tal
realm, governments can enjoy the cost reductions blockchain offers.
·
Banking the unbanked
To be unbanked describes a person who does not have a checking or savings
account. Being unbanked puts individuals at an extreme dis-advantage as the=
y do
not have access to financial services like loans and usually pay more for c=
heck
cashing. By creating a digital currency governments can include this market
segment, onboarding people with mobile phones.
According to the "What Is Retail Central Bank Dig=
ital
Currency?" article by Matthieu Saint Olive, there are two types of cen=
tral
bank digital currencies:
·
Wholesale CBDC
A wholesale CBCD is a type of currency used by financial institutions to buy
and sell financial assets. It would replace real time settlement systems us=
ed
today.
·
Retail CBDC
Retail central bank digital currency would be used as a digital twin for fi=
at
currency. Citizens would use it to pay for things, send money and save it.<=
/p>
Central Bank Digital Currencies are being considered a= cross the globe.
According to the CBDC Tracker, the Sand Dollars, a retail CBDC iss= ued by the Central Bank of the Bahamas is the first nationwide Central Bank Dig= ital Currency. The US Federal Reserve is researching CBDC for the US with the Federal Reserve Bank of Boston and MIT committed to a multi-year collaboration = to build a hypothetical currency called the Hamilton.
Hyperledger created a Capital Market Special Interest Working Group spearheaded by <= span class=3DMsoHyperlink>Vipin Bharathan<= /span> working on standards for CBDC’s. This working group is just one of many discussing CBDC’s and is open for anyone to join= span>.
At the beginning of this course we discussed the Inter=
net
and the changes it has gone through. We started with Web 1.0 and how it
revolutionized the way exchanged value, looking back it is hard to believe =
we
managed without email. Then came Web 2.0 and our social status and
personal information flowed on the net as freely as the air we breathe. Web=
3.0
started with blockchain and the transfer of value, the first killer applica=
tion
being Bitcoin.
Now, you may be asking yourself, &qu= ot;What's next?". That's where non-fungible tokens come into pl= ay and are set to revolutionize art, music, sports and gaming by offering a new kind of digital ownership and the ability to transfer unique value with dig= ital collectables. We first saw a glimpse of this new market with CryptoKitties = but let's look deeper into this phenomenon.
According to Wikipe= dia, a non-fungible token:
"is a unit of data stored on a digital ledger, called blockchain, that certifies a digital asset to be unique and therefore not interchangeable".
NFTs can represent art, music, videos and other digital files where access to the original file is restricted, limited to the owner proving authenticity and providence. The first standard for issuing NFT’s w= as based on the Ethereum's ERC-72= 1 that differs from the ERC-20 as ERC-721 tokens are all unique which makes them perfect for the collectibles market. The ECR-11= 55 aims to improve on the previous token standard by further defining assets.
Let's now take a look at some of the types of non-fung= ible tokens:
·
Digital artwork
By guaranteeing uniqueness of a digital item and applying smart contracts to
the terms of the sale, artists are now in control of the ownership rights to
their work giving control of royalties back to the creator. The New York Ti=
mes
reported art entitled "Everydays – The First 5000 Days", by
artist Mike Winkelmann, also known as Beeple, sold for $69.3 mil=
lion
USD in 2021.
·
Collectables
As we saw with CryptoKitties, non-fungible tokens create unique items. One =
of
the more popular collectables are CryptoPunks,
a collection of 10,000 uniquely generated characters each having a unique o=
wner
registered on the Ethereum blockchain. A crypto punk, Punk 1651 sold for 78=
ETH
or $136,850.22 USD.
·
Games
NFTs can be used to represent assets in computerized games. With the abilit=
y to
trade assets created in a gaming platform, users and creators of assets in =
the
digital game can trade assets on a third party marketplaces and store them =
in a
wallet where the private keys are controlled by the gamer, taking control a=
way
from the game developer.
·
Music and film
With NFTs, musicians and filmmakers can now tokenize their work where the
artist monetizes and profits from their content. When artists release music=
or
film as NFT, they retain control and realize royalties in a more equitable =
way.
Musicians can join in decentralized marketplace such as Mediachain a
·
Sports
The sports industry has embraced the idea of NFTs from tokenizing memorable
sporting moments to trading card collectables. NBA Top Shots be=
ing
the leader for creating a marketplace for NBA collectible cards and moments=
.
·
University research
In May 2021, UC Berkeley announced it would auction off N=
FTs
for the patent disclosure for two Nobel Prize-winning inventions dealing wi=
th
gene editing and Cancer Immunotherapies.
The younger generation of collectors aren’t interested= in China sets and linen, but something they can show their friends on their so= cial media accounts. The future of the non-fungible token promises to be one of = the more energetic market segment blockchain has seen.
To end this section, we must mention int=
eroperability.
Interoperability in blockchains deals with creating standards so different
types of blockchains can communicate with each other.
If new emerging blockchains can’t communicate with each other, we will have the same issues with siloed data that created frustrati= on with the Internet of Today. As different blockchains take different approac= hes to interoperability, standards will emerge that will help regulate the indu= stry and help with widespread adoption. Currently Hyperledger and Ethereum are w= orking together on interoperability projects from Hyperl= edger Besu (to learn more about Hyperledger Besu enroll into = ;Hyperledger Besu Essentials: Creating a Private Blockchain Network (LFS176x)), an open source Ethereum client for enterprise solutions that can be run on the Ethereum public network or on a private permissioned network. Other projects in the Hyperl= edger labs that deal with interoperability are working on standar= ds that will make it easier for blockchains to talk to each other.
When considering how blockchain interoperability can w= ork, consider email and smartphone. Both of these technologies have the ability = to interoperate. Outlook email server can receive email from the Gmail server = and Verizon cell phone carriers can transfer and accept calls from T-Mobile. Th= ese services would not operate efficiently, if these companies couldn't exchange data. With this in mind, blockchain are developing projects that, like smartphones and emails, will transfer value and information across blockcha= in seamlessly.
In this chapt=
er,
we discussed:
·&nb=
sp;
How some feat=
ures
of blockchain are solving real world problems.
·&nb=
sp;
How immutabil=
ity
is opening up new cooperation models for business.
·&nb=
sp;
How the conce=
pt
of autonomy will re=
duce
conflict by eliminating human processes.
·&nb=
sp;
New emerging
business models as multiparty exchanges, with built in trust, are being
developed.
·&nb=
sp;
How the double
spend accounting issue is solved with blockchain.
·&nb=
sp;
Future trends=
in
decentralized finance and Central Bank Digital Currencies.
·&nb=
sp;
The importance
of interopera
·&nb=
sp;
Non-fungible
tokens (NFTs) and their importance to the blockchain ecosystem.
This final section =
will
examine blockchains in action. We will see how blockchain is providing
solutions for businesses, governments and social projects. Businesses fuele=
d by
blockchain solutions are developing new relationships for more efficient
communication and trust amo=
ng
untrusting parties, fostering new business models.
Governments a=
re
realizing the best way to serve the population is to develop digital identi=
ty
management systems where individuals hold their credentials and services can
instantly be matched to those in need. We will discuss how governments are using
blockchain to tackle document and workflow management issues creating better
services for their citizens.
Next, we will
discuss the impact blockchain is having in developing countries. We will lo=
ok
at examples of how philanthropy is offering new transparency and accountabi=
lity
to charity organizations with massive global benefits.=
Then, we will
devote some time discussing new technologies and emerging breakthroughs
developers are building. Either to enhance existing systems or offering
services to help users manage blockchains, these new advances are like noth=
ing we have seen
before.
Finally, we w=
ill
see use cases designed to
improve the individual's experience, decentralized gaming platforms and new
marketplaces inventing new worlds to interact in. Blockchains are reshaping=
the
way artists and musicians are benefiting from their creativity by having the
royalties delivered
directly to them, without agents and middlemen.=
Blockchain wi=
ll
be a part of everyone's future.
By the end of
this chapter, you should be able to:
·&nb=
sp;
Discuss
blockchain use cases in business enterprises.
·&nb=
sp;
Discuss use c=
ases
in the public sector.
·&nb=
sp;
Explain the
relevance of blockchain in social impact projects.
·&nb=
sp;
Discuss
developing new technologies made possible by blockchain.
·&nb=
sp;
Explain how
blockchain will improve the human experience.
Blockchain technology promises sound extremely lofty. =
Let's
take a look at how this technology is improving the way we trust each other=
and
interact. It is showing a new path that will improve the lives of so many. =
We
will see how identity management is key (no pun intended) to all the use ca=
ses
we discuss. For our discussion, we will categorize use cases by who is
developing solutions, starting with large enterprise solutions to smartphon=
e and
web browser applications powered by blockchain that put control back in the
user's hands:
·
Enterprise solutions
Businesses and organizations are implementing blockchain to overcome obstac=
les
in transparency and trust forging new associations with global implications=
.
·
Public sector solutions
Governments are using blockchain solutions to improve services that they
provide to their citizens. Digital identity solutions, central bank digital
currencies and transparent workflows are bringing efficiency to the public
sector system with an end result that benefits citizens. With that, new laws
are needed to regulate this technology.
·
Social impact solutions
Social impact blockchain solutions address social and environmental challen=
ges.
Backed by the =
17 Uni=
ted
Nations Sustainable Development Goals blockchain developers,
investors, philanthropists, government agencies and foundations are develop=
ing
solutions that tackle these global problems.
·
Platform developers' solutions
Blockchain is a new technology constantly improving and changing. Developers
are creating standards and new platforms to bring this technology into the
mainstream.
·
End user solutions
Everyday solutions emerge that put decentralized blockchains and all the
benefits they promise in the hands of individuals from new decentralized
marketplaces to new ways to express your music, art, and even let you trade
property built inside a game.
Businesses fueled by blockchain solutions are developing new relationships for more efficient communication and workflows, fostering new business models. Problems with h= ow we transact online, to the cost of doing business, are solved with blockcha= in. Let’s look at an enterprise supply chain solution built with blockchain.
Supply chain data is not always visible or trusted. In recent times of disruption supply chains matter more than ever. Global supp= ly chain and blockchain are working to secure systems to better handle these disruptions. The Covid pandemic shed light on the frailty of our supply cha= ins which accelerated discussion over blockchain solutions.
Learn more about the collaboration between Maersk and = IBM from the "Digitizing Global Trade with Maersk and IBM" blog post by Michael White.
Global trade functions much as it has since the introd= uction of the shipping container in 1956.
Manual, paper-based processes are still common and information about the status of goods is locked away in organizational silo= s.
Today, 90% of goods in global trade are carried by the shipping industry with the supply chain slowed by the complexity and sheer volume of point-to-point communication across a loosely coupled web of land transportation providers, freight forwarders, customs brokers, governments, ports, and ocean carriers.
IBM and Maersk are addressing this problem with a distributed permission platform accessible by the supply chain ecosystem designed to exchange event data and handle document workflows.
Maersk and IBM are employing blockchain technology to = create a global tamperproof system for digitizing trade workflow and tracking shipments end-to-end, eliminating frictions including costly point-to-point communications.
The collaboration will launch with the potential abili= ty to track millions of container journeys per year and integrate with customs authorities on selected trade lanes.
In a recent test by Maersk, shipping a single containe= r of flowers from Kenya to the port of Rotterdam resulted in a stack of nearly 2= 00 communications.
Using this example, we will examine how blockchain has= been implemented to create trust and security in the digitized document workflow= and improve the efficiency of global supply chains.
Here we can see each distinct entity involved in the transaction: the growers, export authorities, ports, customs, and importers= .
Shipping from the port of Mombasa requires signatures = from three different agencies approving the export and six documents that descri= be the origin, chemical treatments, quality of the produce, and customs duties= .
Firstly, using a PC or mobile device the Kenyan farm s= ubmits a packing list that becomes visible to all participants.
This action initiates a smart contract that enforces an export approval workflow between the three agencies.
As each agency signs, the status is updated for all to= see.
Simultaneously, information about the inspection of the flowers, the sealing of the refrigerated container, the pickup by the truck= er, and the approval from customs is communicated to the port of Mombasa allowi= ng them to prepare for the container.
All actions relating to the documents and the physical= goods are captured and shared: which documents were submitted, when and by whom, where the flowers are, and who is in possession of them, and the next steps= in their journey.
Flowers are perishable, so it's crucial that there are= no delays or missed steps .
Blockchain provides secure data exchange and a tamperp= roof repository for these documents and shipping events.
This system could significantly reduce delays and fraud saving billions of dollars annually.
And, according to the WTO, reducing barriers within the international supply chain could increase worldwide GDP by almost 5% and to= tal trade volume by 15%.
The resulting solution is called TradeLens= . You can take the TradeLens tour here<= /a>.
Farms are complicated ecosystems with many moving part=
s,
careful timing, and seasonal financing structures. However, after the food
leaves a farm, it becomes part of a wide-reaching supply chain with a lot of
parties. Buyers, sellers, distributors, and grocery chains all want to know
where the food is along its journey. You also probably want to know where y=
our
food has been before you serve it on your dinner table.
The trend toward blockchain agriculture promises to ma= ke each step of growing and distributing food simpler. It will offer all parti= es involved a single source of truth for the agriculture supply chain.
To learn more, read Hyperledger's case study "How Walmart Brought Unprecedented Transparency to the = Food Supply Chain with Hyperledger Fabric".
I purchased a pack of mangos, I came into my staff mee= ting, I put them on the table, and I said: "Your traceback exercise starts r= ight now".
And we timed how long it took them to get the informat= ion for each point in the food system all the way back to the farm.
And I'm not gonna give you the results.
After the pilot, but it's gonna be good.
When a customer shops in our stores, we know they expe= ct great prices, we know they expect fast, clean, and friendly service, but an unspoken expectation is that they expect the products that they buy in our stores to be safe.
You know, when there's a food event or a food scare wh= at you want to do is you want to be fast, but you want to be right.
That food product is guilty until proven innocent.
We at Walmart, will actually pull all the product unti= l we know what is the implicated product and can put then the safe product back = out.
And imagine, if we could pinpoint with certainty, with= in minutes not days, that it was the implicated product.
Walmart and IBM are working to make that a reality.
If you think about the food system, it's pretty comple= x.
It involves farmers, processors, distributors, and the= way traceability is done today, each segment of the food system does it their o= wn way.
Most actually do it on paper or on systems that don't = speak to each other, and so you can never have a full view of what's happening in= the food system.
What we hope to do with blockchain is bring all food s= afety system stakeholders and collaborate so that we do it one best way, we can d= o it very quickly, and efficiently.
Blockchain is a digital ledger that allows different segments of the food system to capture information about the product, what they've done to it, where that product has been.
If we're linking that data with other data points, the Internet of Things, all that information will yield to insights that will a= llow us to have a safer, more affordable and sustainable food system.
But we don't believe traceability is the goal. We beli= eve that transparency is the ultimate goal.
Blockchain will give us the ability to not only track = where food came from, but how it was produced, was it produced safely, was it produced responsibly, is it sustainably grown, how many dates of shelf life= are left on that product.
The food system is a shared responsibility and for blockchain, and traceability, and transparency to work we need a lot of peo= ple working together.
We're excited to be working with IBM on this blockchain initiative, but it's not just Walmart and IBM, we actually have some of our suppliers participating in this pilot, we've got some universities also participating in the pilot.
We'll make sure that all stakeholders work together fo= r a safer and better food system.
·&nb=
sp;
IBM's Food Trust Solution building fait=
h in
food supply chains.
· Paramount's Farm to Table creates an inclusive blockchain supply chain solution from the farm all t= he way to your plate.
Blockchain is transforming the healthcare industry. So= me challenges the healthcare industry faces are counterfeit drugs, siloed data, health record management to name a few. Blockchain can solve these issues w= ith interoperability, data integrity and security. Let's look at some solutions.
Moderna uses blockchain to support smart COVID vaccine management. To learn more see "Moderna, IBM Explore Blockchain Tech, AI to Support 'Smarter' Management of COVID-19 Vaccines" article= by Tomi Kilgore.
SAP has an existing solution unrelated to blockchain c= alled Advanced Track and Trace for Pharmaceuticals (ATTP) which generates the uni= que identifiers. To further explore this solution read the following artic= le by Nicky Morris "= SAP Leads Pharma Supply Chain Blockchain" and watch&nb= sp;"Verifying Pharmaceutical Products Using Blockchain&quo= t; video.
Also, Pfizer has been using blockchain in transparent&= nbsp;<= span style=3D'font-size:13.5pt;font-family:"inherit",serif;color:#00688D'>clinic= al trials. You can learn more about this project by reading the following blog post, "Clinical Trial Data Should Be Accessible and Transparent".
Reduction of settlement times will improve the flow of=
money
through fintech companies.
Swiss Exchange, SIX has a solution that solves the issue in = the trade markets of long settlement times. The new blockchain platform runs parallel to the existing SIX platform, which involves three steps to comple= te a trade, often over several days. Two of those steps vanish in a blockchain distributed ledger, meaning a transaction can be completed in fractions of a second.
Trade finance is showing promise for blockchain soluti= ons in letter of credits by making available financial mechanisms previously exclu= ded for most people. In a paper from Andrea Frosinini, "Reshaping Trade Finance: Towards a “New” Letter of Credit", he supplied trade finance paired with blockcha= in that provides delivery and payment assurance to buyers and sellers, reducing operation and transactional cost and opening up market opportunities.
Voltron Trade Finance was co-founded by eight member b= anks including Bangkok Bank, BNP Paribas, CTBC, HSBC, ING, Natwest, SEB and Stan= dard Chartered. The consortium has since grown to more than 50 banks and corporations. The platform is built on Corda blockchain, it solves the prob= lem that most letters of credit are based on paper and take 5 to 10 days. By us= ing blockchain technology, the letters of credit may be efficiently transacted = in less than 24 hours. You can learn more about Voltron from the following two articles "Blockchain Based Letter of Credit Processed= by HSBC on Voltron Trade Finance Platform" (by JD Alois) and "Trade Finance Solution Voltron Launches Open Platform on Corda Blockchain".
Blockchain benefits of security, efficiency and speed = have government leaders research the far reaching implications that will improve lives and accelerate global blockchain solutions. Public sector can be categorized by, Public Administration, Public Service, Land and Community, = and Government. According to a presentation by Bobbi Muscara, Saptarshi Choudhu= ry and Sean O’Kelly, "Re-thinking Public Sector through Blockchain", all blockchain public sector project must cons= ider in the design these four factors:
· Identity management for Governments
· Interactions (highly regulated transactions)=
· Regulations
· Governance
One solution that we have already mentioned in Chapter= 1 is Smart Dubai. Its goal is to become the happiest city on Earth. Watch these additional resources to learn more about the Smart Dubai initiative, = "= Smart Dubai's Paperless Strategy" and "= Happy Cities Forum 2019".
Dutch Blockchain Coalition established = three pillars of society working together to build a blockchain future:
· Developing blockchain building blocks - digi= tal identities
· Realizing the conditions for utilizing blockchain
· Developing and realizing the Human Capital Agenda
Wyoming has now enacted a total of 13 blockchain-enabling laws, making it the only US state to provide a comprehensive, welcoming legal framework that enables blockchain technology to flourish, both for individuals and companies. This effort was led by tireless Caitlin Long.
The Blockchain for Social Impact Coalition (BSIC)&nbs=
p;is
a not-for-profit organization that incubates, develops, and collaborates on
blockchain products and solutions that can address social and environmental
challenges across the United Nations Sustainable Development Goals. The aim=
is
to inspire, federate, and create bridges between NGOs, and government agenc=
ies,
foundations, impact investors, philanthropists and technologists.
According to the "= 7 Ways Blockchain Can Be Used for Social Good" article by Kayla Matthews, areas that are seeing blockchain social impact projects are= :
· Philanthropy and remittances
· Financial empowerment
· Identity and land rights
· Governance and democracy
· Supply chain and environmental protections= p>
More than 1.7 billion people around the world are unba= nked and can’t access the financial services they need. Kiva is an international nonprofit, founded in 2005 in San Francisco, with a mission to expand financial access to help underserved communities thrive. Kiva accomplishes this by crowdfunding loans and unlocking capital for the underserved, improving the quality and cost of financial services, and addressing the underlying barriers to financial access around the world. Through Kiva's work, students can pay for tuition, women can start business= es, farmers are able to invest in equipment and families can afford needed emergency care.
The mission of the
The platform will tap into the potential of the Rohing= ya community and other marginalized people and offer options to counter their exclusion = from the mainstream.
The Giving Chain is a grassroots Social Impact project designed to improve disaster relief efforts as well as open up new pathways for local charity giving.
Created by three local meetup groups, Ledger Academy, =
Hyperl=
edger
Princeton and
The Giving Chain is now moving from a Proof of Concept project to a prototype as it was selected for the 2021 Hyperledger Mentorsh= ip program.
ConsenSys Mesh companies offer solutions to help build=
out
the Ethereum Ecosystem. ConsenSys Mesh acts as an incubator for Ethereum-ba=
sed
projects:
·
Codefi
Finance and commerce blockchain applications.
·
Diligence
Ethereum smart contract audits.
·
INFURA
Scaling and performance issues.
·
Metama=
sk
Wallet application.
·
Quorum
open source blockchain platforms.
·
Truffl=
e
Application builder.
Hyperl=
edger
Greenhouse is a graphical representation of the blockchains
tools and libraries hosted by the Linux Foundation:
Hyperledger is an open source project with blockchains= for you to build your solutions on and tools to support these blockchains. Learn more about Hyperledger distri= buted ledgers and librar= ies on the Hyperledger website.
Daml=
span> is:
&qu= ot;a development framework for creating systems of record that securely connect across business processes and data boundaries while retaining privacy, guaranteeing data integrity, and enforcing strict authorization. Allowing s= uch systems to cross boundaries — legal, regulatory, organizational, or other — enables them to form seamless economic networks".
·
Daml Connect
It is a complete development and application stack allowing you to build,
integrate, deploy, and maintain full-stack multi-party solutions with a min=
imum
of boilerplate code.
·
Daml Drivers
They allow you to deploy your application using distributed ledgers, blockc=
hains,
or databases. Migrate between ledger drivers without any code changes as
business needs evolve.
·
Daml Hub
It is a cloud service that enables rapid distributed application deployment
with an always available, easy-to-use, fully managed cloud environment.
SIMBA =
Chain,
Inc. was formed in 2017 from a grant awarded by the Defense
Advanced Research Projects Agency (DARPA) to Indiana Technology and
Manufacturing Companies (=
ITAMCO=
)
and the Center for Research Computing (CRC) at the University of Notre Dame in order to
develop a secure, unhackable messaging and transaction platform for the Uni=
ted
States military.
SIMBA Chain is a cloud-based, smart-contract-as-a-serv= ice (SCaaS) platform, enabling users across a variety of skill sets to implement dapps (decentralized applications). These apps allow secure, direct connect= ions between users and providers, eliminating third parties. The easy-to-use platform is tailored for users, developers, government, and enterprises to quickly deploy blockchain dapps for their enterprise.
SIMBA's Smart Contract Designer allows anyone to quickly and easily create smart contracts. The interface allows users to easily build a graph = of the relationships between assets and transactions. This graphical model is = then converted to Solidity where each asset and transaction becomes a Solidity S= mart Contract method that can be executed on the blockchain.
SIMBA Chain also offers management services (Software as a Service) for your blockchain soluti= on that grant use of software solutions or APIs (application programming interface), across several cloud platforms so companies can effectively cre= ate blockchain solutions.
Identity management is vital for blockchain operation.
Identifying objects that will interact with a blockchain such as people,
places, things (IOT devices), is the first step and consideration
when developing a blockchain.
One solution is the Verifiable Organizations Network (= VON) project that ena= bles organizations—and the people running those organizations—to conduct business online in a trusted manner. The core challenge is that on the Internet we c= an’t tell if we’re talking to you, or someone pretending to be you. We need a reliable way to verify that “you are you” in a manner appropriate for the t= ype of transaction that you want to complete and in a privacy-preserving manner= .
To learn more, we recommend that you listen the "Digital Trust: How the OrgBook Enables the Digital Economy" webinar.
Marketplaces exist to shop renewable energies to make
sustainable solutions available on open markets. Everyone knows there are
countless inefficiencies in the energy grid, stemming from the highly
centralized nature of our utilities systems. With the advent of at-home ene=
rgy
production and storage through affordable solar panels and home batteries, =
many
users are storing energy surpluses at home without a way to “sell” clean
energy.
Power = Ledger solution offers a peer-to-peer energy trading platform. It builds global blockchain energy solutions to provide communities access to affordable electricity th= at is also renewable. By increasing the transparency for energy origins, Power Ledger could assist with providing customers more choices for where their energy comes from. They accomplish these goals through peer-to-peer energy trading, carbon product trading, microgrids management, and more.
The days of video games being just a form of entertain=
ment
are long gone. Most of the new video games have in-app purchases and loot b=
ox
features in them. These features enable users to use real-life currency to =
buy
new skins for their characters and tools. With the use of DeFi, game
developers can implement the newer incentive or reward models with DeFi coi=
ns.
In fact, gaming and eSports will likely become one of the major markets as =
the
users are more tech-savvy and open to newer technologies.
To learn more, visit the Game Developers Conference's web= site.
Decent=
raland is
a virtual world built on top of the Ethereum blockchain. A fully decentrali=
zed
world where users can interact, build and exchange items, ideas, even enjoy=
a
concert with virtual friends (real life people that they met
in Decentraland). Decentraland is run by a DOA, decentralized organiza=
tion
built with smart contracts and dapps (decentralized applications).
Watch this video to learn =
more
about Decentraland.
Experts from Statista projected that the music
industry will grow from $1.4 billion to $17.2 billion dollars between =
2012
and 2021. That’s a lot of dough, and it probably wouldn't all go to deservi=
ng
parties, until blockchain entered the scene. Now there is a way for
artists, producers, and labels to get paid on time, in full with royalties
going directly back to the artist.
Read "Blockchain for the Music Industry: 9 Possible Use Cases" by Sam Mire to learn more.
themusicianmarketplace.com was built to establish one profile for each artist, but each artist can list talents for= any job they want. For example, John is a guitar player, a songwriter who is recording songwriting gigs, composes original music, resells his software, = and sells his guitar instrument all in one place. The options on themusicianmarketplace.com are unlimited. Below you can see themusicianmarketplace.com dashboard:
What is the future of blockchain?
That is a big question.
And unlike everything we have already talked about in = this course, this is nothing factual, but just my own opinion.
I think blockchain is a really, really exciting place = right now.
Blockchain tends to get talked about in the context of= a lot of other exciting emerging technologies, things like IoT and smart devices, self-driving cars and autonomous devices, AI, virtual and augmented reality= .
The truth is, in my opinion, I see blockchain as an en= abling layer for many of these other technological revolutions.
Everybody is excited about the idea of smart devices.<= /p>
Wouldn't it be great if I had a smart refrigerator that automatically reordered more ketchup as it started to get low?
Everyone gets a little nervous when it comes time to actually talk about implementing something like this, because how do we pro= tect it?
How do we ensure that the data the system uses is immu= table and secure?
Blockchain provides that.
I think that we are going to see a lot of growth in em= erging technologies as blockchain continues to emerge, because it's going to make = more and more things possible.
And if we talk long term, and again, only my opinion, I think blockchain becomes the enabling layer for a multi-planetary human economy.
You might have seen earlier this year, February 2018, = SpaceX put up Falcon Heavy.
Because SpaceX and Elon Musk are committed to getting = us to Mars.
And I truly believe in the next 20 to 50 years we are = going to see a human colony on Mars.
Now, one interesting thing about Mars is that it's rea= lly really far away.
At the closest Earth gets to Mars, it's a 26 minute roundtrip at light speed, and there's two weeks out of every March and year, where Earth and Mars can't communicate because the Sun is right in the midd= le.
Well, think about this: if you run a small pizza shop = on Mars, you close out your register for the day, and you need to deposit fund= s into your bank account, and that is a bank on Wall Street, New York City, and un= der the best case scenario, that's a 26-minute roundtrip, you can see how centralized models of the Internet aren't going to scale.
So, if you ask me, I really believe technologies like blockchain and supporting technologies like IPFS are the enabling technolog= ies to allow humans to continue to trade and interact and conduct commerce with each other when we become a multi-planetary society.
And that's why I think there's a ton of potential in blockchain and it's something really exciting, and hopefully, you're all inspired to stay up-to-date with.
In this chapt=
er,
we discussed:
·&nb=
sp;
Blockchain use
cases in an enterprise environment.
·&nb=
sp;
Public sector=
and
how blockchain is important in shaping citizens'
futures.
·&nb=
sp;
The relevance=
of
blockchain in social impact
projects.
·&nb=
sp;
Developing new
blockchain platforms emerg=
ing
as the ecosystem evolves.
·&nb=
sp;
Blockchain and how it =
will
improve human experience.
The end . . .
© 2021 edX Inc. All rights reserved.
深圳市恒宇&=
#21338;科技有限公司 粤ICP备17044299=
号-2